表的创建与维护以及数据操纵.ppt_第1页
表的创建与维护以及数据操纵.ppt_第2页
表的创建与维护以及数据操纵.ppt_第3页
表的创建与维护以及数据操纵.ppt_第4页
表的创建与维护以及数据操纵.ppt_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第四章 表的创建、维护与数据操纵, 表的创建与维护操作 数据操纵,An Introduction to Database Systenm,4 表创建、维护以及数据操纵,1 SQL Server 支持的数据类型,2 创建表,3 修改表,4 删除表, 企业管理器, T-SQL语句,操作演示,5 数据操纵:插入、修改和删除更新,命令格式:DROP TABLE table_name,实质:定义表的结构以及约束等属性,即确定表的名字、所包含的列名、列的数据类型、长度、是否可以为空值、默认值情况、主外键、约束等等。,An Introduction to Database Systenm,4.1 SQL 支持的数据类型,An Introduction to Database Systenm,4.1 SQL 支持的数据类型,整数型数据,Bigint:-263263-1,精度19位,长度8个字节,Int:-231231-1,精度10位,长度4个字节,Smallint:-215215-1,精度5位,长度2个字节,Tinyint:0255,精度3位,长度1个字节,An Introduction to Database Systenm,4.1 SQL 支持的数据类型,精确数值型,是指由整数部分和小数部分最大长度固定表示的数值, 包括decimal和Numeric两类,功能上两者完全等价。 声明格式:numeric(p,s) | decimal(p,s) 其中p为精度,即指定小数点左边和右边可以存储的 十进制数字的最大个数 ,s为小数点右边可以存储的十进制 数字的最大个数 。 注意事项:声明该类型的数据时,其小数位数必须小于 精度;在给精确数值型数据赋值时,必须使所赋数据的整数 部分长度不大于字段的整数部分长度。,An Introduction to Database Systenm,4.1 SQL 支持的数据类型,浮点型,是指不能精确表示数据的精度的数据类型,使用此类型 来存储数据时,可能会损失部分精度,它可以用于处理取值 范围非常大且对精度要求不是十分高的数值量。,real:-3.40E+38 3.40E+38 ,精度7位,长度4个字节,float:-1.79E+308 1.79E+308 ,精度15位,长度8个字节,An Introduction to Database Systenm,4.1 SQL 支持的数据类型,货币型,专门用于处理货币的数据类型:money和smallmoney, 它们用十进制数表示货币值。 当向表中插入货币型数据时,必须在数据前面加上货币 符号($),并且数据中间不能有逗号;如果货币值为负数, 需要在$后面加上负号。 Money(smallmoney)数据的精度和长度和bigint(int)型 数据相同,不同的是Money型数据有4位小数。,An Introduction to Database Systenm,4.1 SQL 支持的数据类型,字符型/unicode字符型,用于存储字符串,包括字母、数字和其他特殊符号等,在输入时,需要用单引号或双引号括起来,实际最大存储空间都是8000个字节。, char(n)和nchar(n), varchar(n)和nvarchar(n),定长的字符数据类型,表示字符型数据的长度。,变长的字符数据类型,n表示字符串中字符的最大长度。,An Introduction to Database Systenm,4.1 SQL 支持的数据类型,文本型,用于存放大量(231-1字节)的字符数据,例如备注、日志信息等,文本型数据也有text和ntext两种类型。,图像数据型,用于存放图片、照片等,实际存储的是可变长度的二进制数据,介于0231-1字节之间,标识符号为Image。,时间戳数据类型,当对表中记录进行更新操作时,系统自动为该行的时间戳字段添加 一个计数器值,即将原来的时间戳值加上一个增量;它的值实际上反映 的是系统对该记录修改的相对顺序;一个表只能有一个timestamp列。,An Introduction to Database Systenm,4.1 SQL 支持的数据类型,日期时间型, datetime, smalldatetime,表示日期范围1753-1-19999-12-31的日期和时间 数据,精度为3ms。数据长度为8个字节。,注意:用户以字符串的形式输入和输出datetime类型 数据,中间一般用“-”、“/”隔开。,表示日期范围1900-1-12079-6-6的日期和时间数据, 精度为1分钟。数据长度为4个字节。,An Introduction to Database Systenm,4.2 创建表,实质:定义表的结构以及约束等属性,即确定表的 名字、所包含的列名、列的数据类型、长度、是否可以 为空值、默认值情况、主外键、约束等等。,NULL概念,identity属性,表示未知、不可用或者未来添加的数据。,系统自动生成序号值的标识列,可以作为主键。数据类型 一般是整型数据。定义标识属性时,可以指定初始值、增量值 ,此后,系统自动更新标识列值,该列不允许为空值。,An Introduction to Database Systenm,4.2 创建表,例12:创建院系表(dept):具体字段及其属性如下:,An Introduction to Database Systenm,4.2 创建表,例13:创建学生表(stu):具体字段及其属性如下:,An Introduction to Database Systenm,4.2 创建表,例14:创建课程表(course):具体字段及其属性如下:,An Introduction to Database Systenm,4.2 创建表,例15:创建成绩表(grade):具体字段及其属性如下:,An Introduction to Database Systenm,4.2 创建表_查询分析器,CREATE TABLE table_name ( | as /指定表级约束 ) := ,An Introduction to Database Systenm,4.3 修改表,操作包括:更改表名、增加列、删除列、修改列属性等,1 更改表名,SQL 2000允许改变一个表的名字,但当表名改变后,与此相关的某些对象,以及通过表名与表相关的存储过程将无效。因此,一般不要更改一个已有的表名,特别是该表已经定义了视图或建立了表关系。,修改表时常用操作,An Introduction to Database Systenm,4.3 修改表,2 增加列,3 删除列,在SQL Server中,被删除的列是不可恢复的,所以在删除 列之前需要慎重考虑。并且在删除一个列之前,必须保证基于 该列的所有索引和约束都已经被删除。,4 修改列属性,主要包括:修改列名、列的数据类型、列的长度和列约束条件等。但当表中有记录时,建议不要轻易更改表的结构,特别是不要改变数据类型,缩短数据长度以及精度等。,An Introduction to Database Systenm,4.3 修改表,例16:在院系表中添加一个字段: 院系地址:变长字符,50个长度,允许为空,例17:在学生表中修改一个字段: 姓名:变长字符,20个长度,允许为空,例18:约束规则添加时 1 主键约束 即可以在创建表时创建,也可以后添加 2 外键约束 同上 3 默认值约束 必须在创建表后添加,An Introduction to Database Systenm,4.3 修改表,修改表命令格式,ALTER TABLE table_name ALTER COLUMN column_name ( ) null | not null | ADD | | DROP column | ,An Introduction to Database Systenm,4.5 数据操纵,数据库的目的是能够科学的组织和存储数据,并且方便DBA管理数据 库中的数据。SQLServer数据操纵主要包括:数据检索和数据更新。 【企业管理器】操作表中数据:演示,1 数据插入更新,2 数据修改更新,3 数据删除更新,单条记录的插入、以及批量数据(子查询)的插入等,An Introduction to Database Systenm,4.5.1 插入数据,1 插入单条记录,Insert Into (列名1,列名2,) Values (值表达式1,值表达式2,),功能: 1 将值表达式的结果添加到指定表的指定字段中; 2 如果表中的某个字段没有出现在列名序列中,则新记录在该列上取NULL; 3 如果定义表时要求该列不能取空值,则数据插入将失败; 4 值表达式的顺序要与前面列名的顺序一致。,An Introduction to Database Systenm,4.5.1 插入数据,1 插入单条记录,Insert Into (列名1,列名2,) Values (值表达式1,值表达式2,),举例: 1 向学生表中添加一条记录(学号:200801010001,姓名:李丹丹,性别:女,院系:政法系,出生日期:1980-12-21)。 2 向成绩表添加一条记录(学号:200801010001,课程号:401001),An Introduction to Database Systenm,4.5.2 更新(修改)数据,2 更新记录,Update Set = where ,功能: 1 修改指定表中满足Where条件的记录; 2 Set子句决定对那个字段进行修改,修改后的值取决于值表达式; 3 如果省略Where子句,则代表修改所有的记录; 4 Update子句一次只能操作一个表,如果修改的信息涉及多个表,则需要使用级联更新或其他手段来实现。,An Introduction to Database Systenm,4.5.2 更新(修改)数据,2 更新记录,Update Set = where ,举例: 1 更新学号为200608010001的出生日期为:1981-10-10 2 追加计算机系学生的简历为:2008年暑假在河南周口市淮阳地区参加社会实践,对市民进行国家政策宣传教育。 3 将所有课程不及格的学生成绩设置为0;,An Introduction to Database Systenm,4.5.3 更新(修改)数据,3 删除记录P131页,Delete From where ,功能: 1 删除指定表中满足Where

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论