1、1/25/25数据表的基本概念数据表的基本概念数据表就是相关联的行列数据集合。1.字段字段数据表中的一列称为一个字段。每个字段的标题名称称为列名或字段名,一个数据表中的字段名必须是唯一的。一个字段中存放同一类型的数据,不同字段存放的数据类型可以不同。一个字段中所存放的数据类型、数值大小及字段长度成为该字段属性。2.记录记录数据表中的一行成为一个记录。每个表都有一个主键,主键字段的数据可以唯一标识表中的一条记录。设置了主键的数据表中,各条记录是唯一的。2/25/253.用用T-SQL语句创建数据表及约束对象语句创建数据表及约束对象3.1 用用Create Table 语句创建表的结构语句创建表的
2、结构语法格式:语法格式:Create table 表名表名 (列名列名1 列属性列属性 ,列名列名2 列属性列属性 ,列名列名n 列属性列属性 )注意:注意:n列的定义必须放在圆括号中。列的定义必须放在圆括号中。n语法中参数顺序不能改动。语法中参数顺序不能改动。n最多可以设置最多可以设置1024个字段个字段列属性:如列属性:如数数据类型、据类型、nullnull、默认值等默认值等3/25/25例:建立一个例:建立一个“student”表表CREATE TABLE Student(fCodevarchar(9)NOT NULL ,fNamevarchar(10)NOT NULL ,fSexcha
3、r(2)NOT NULL,fClass varchar(4)NOT NULL,fBirthday datetime)4/25/251.字段属性字段属性定义格式定义格式:数据类型数据类型(长度长度)identity(初始值初始值,步长值步长值)null|not nulln默认长度的数据类型默认长度的数据类型“(长度长度)”不允许指定不允许指定;需要指需要指定长度时圆括号不能省略定长度时圆括号不能省略nidentity用于指定该列为自动编号字段用于指定该列为自动编号字段(标识列标识列)nnull|not null 用于指定该列允许空值用于指定该列允许空值(默认默认)或不允或不允许许空值5/25/2
4、52.字段约束字段约束定义格式定义格式:constraint 约束名约束名 primary key(主键列名主键列名)constraint 约束名约束名 unique(惟一列名惟一列名)constraint 约束名约束名 foreign key(外键列名外键列名)references 引用表名(引用列名)引用表名(引用列名)constraint 约束名约束名 check(检查表达式检查表达式)constraint 约束名约束名 default 默认值默认值6/25/251.约束名为以后修改管理时使用,省略为系统默约束名为以后修改管理时使用,省略为系统默 认的约束名。认的约束名。2.字段约束也可
5、以在创建表结构以后另外单独设置字段约束也可以在创建表结构以后另外单独设置3.定义字段同时定义所绑定的约束时,可以省略列名。定义字段同时定义所绑定的约束时,可以省略列名。7/25/253.2用用ALTER TABLE 语句修改表的结构语句修改表的结构修改表结构的语句修改表结构的语句 ALTER TABLE 的语法格式:的语法格式:ALTER TABLE 表名表名 add 列名列名 数据类型数据类型(长度(长度)null|not nulldefault 默认值默认值|alter column 列名列名 数据类型数据类型(长度长度)null|not null|drop column 字段名字段名,n
6、|add constraint 约束名约束名 约束类型定义约束类型定义,n for 列名列名|drop constraint 约束名约束名,n8/25/251 使用使用add子句添加列子句添加列Alter table 表名表名 add 列名列名 数据类型数据类型(长度(长度)null|not nulldefault 默认值默认值 n新增加字段时可以同时设置空值约束、默认值约束新增加字段时可以同时设置空值约束、默认值约束n若不允许为空时则必须给新增加的列指定默认值,否则语若不允许为空时则必须给新增加的列指定默认值,否则语句出现执行错误句出现执行错误 注意:注意:添加的字段若不允许为空则必须设置默
7、认值,如果不允添加的字段若不允许为空则必须设置默认值,如果不允许为空又不需要设置默认值,可在添加字段时先允许为许为空又不需要设置默认值,可在添加字段时先允许为空,再用空,再用 alter column 子句修改为不允许为空,这样就子句修改为不允许为空,这样就没有默认值了。没有默认值了。9/25/252、使用、使用alter column子句修改字段属性子句修改字段属性ALTER TABLE 表名表名 alter column字段名字段名 数据类型数据类型(长度长度)null|not nulln将一个原来允许为空值的列设置为不允许为空时,必须保将一个原来允许为空值的列设置为不允许为空时,必须保证
8、表中已有记录中该列没有空值,而且该列没创建索引证表中已有记录中该列没有空值,而且该列没创建索引n改变数据类型时,如果原来设置了默认值约束,一般应先改变数据类型时,如果原来设置了默认值约束,一般应先解除或删除约束后再修改,否则很容易发生错误。解除或删除约束后再修改,否则很容易发生错误。例:例:Use diannaoxsAlter table 供货商表供货商表 alter column 联系电话联系电话 char(20)10/25/253 用用add constraint 子句添加列约束子句添加列约束ALTER TABLE 表名表名 add constraint 约束名约束名约束类型及定义约束类型
9、及定义for 列名列名,nn该语句添加约束必须指定约束名,而且必须是惟一该语句添加约束必须指定约束名,而且必须是惟一n可以用可以用FOR指定列名,若约束类型及定义中已包含了列名,指定列名,若约束类型及定义中已包含了列名,则不允许使用则不允许使用FOR子句子句n如果只允许有一个约束的列已经设置了约束,则原有约束如果只允许有一个约束的列已经设置了约束,则原有约束未解除时不能添加新的约束未解除时不能添加新的约束11/25/25使用一个约束名可以为不同字段添加多个约束使用一个约束名可以为不同字段添加多个约束 设置主键约束:设置主键约束:primary key(列名列名)设置惟一约束:设置惟一约束:un
10、ique(列名列名)设置外键约束:设置外键约束:foreign key(列名列名)references 主表主表(列名列名)设置检查约束:设置检查约束:check(表达式表达式)设置默认值约束:设置默认值约束:default 默认值默认值12/25/255 用用 drop constraint 子句删除列约束子句删除列约束 ALTER TABLE 表名表名 drop constraint 约束名约束名,n6 用用 drop column 子句删除字段子句删除字段ALTER TABLE 表名表名 drop column 字段名字段名,nAlter table 供货商表供货商表 drop colu
11、mn 联系电话联系电话13/25/25ALTER TABLE ALTER TABLE 表名表名 ADD ADD 列名列名 列名属性列名属性|DROP COLUMN DROP COLUMN 列名列名|ALTER COLUMN ALTER COLUMN 列名列名 列名属性列名属性 Alter table Alter table studentstudent addadd fEmail varchar(30)fEmail varchar(30)Alter table Alter table studentstudent dropdrop columncolumn fEmail fEmailAlter
12、 table Alter table studentstudent alter columnalter column fid intfid int添加或删除表的添加或删除表的列列14/25/25(3 3)删除表)删除表使用使用DROP TABLE DROP TABLE 语句删除表语句删除表语法语法:DROP TABLE DROP TABLE 表名表名例如例如:删除整个删除整个studentstudent表表DROP TABLE studentDROP TABLE student15/25/253.6 查看表信息查看表信息,输入数据输入数据,编辑和删除记录编辑和删除记录3.6.1 查看表信息查看
13、表信息 1.用企业管理器查看表的信息用企业管理器查看表的信息 (1)查看表结构)查看表结构 (2)查看表约束)查看表约束 (3)查看表与表之间的相关性)查看表与表之间的相关性 (4)查看其他对象的信息)查看其他对象的信息 2.使用使用T-SQL系统存储过程系统存储过程sp_help语句显示表语句显示表 结构及相关性结构及相关性 EXECUTE sp_help 表名表名 3.使用查询分析器的使用查询分析器的对象浏览器对象浏览器查看表的结构查看表的结构 16/25/25 1.1.使用使用insertinsert语句向表中插入记录语句向表中插入记录 InsertintoInsertinto表名表名
14、(字段列表字段列表)values()values(值列表值列表)(1 1)字段列表可以是任意列,但数据的个数、)字段列表可以是任意列,但数据的个数、顺序和类型必须保持一致。顺序和类型必须保持一致。(2 2)给表中全部字段提供数据时字段列表可以省略,)给表中全部字段提供数据时字段列表可以省略,但此时提供数据的顺序(个数)必须与表中字段但此时提供数据的顺序(个数)必须与表中字段 顺序一致。顺序一致。(3 3)自动编号标识列不允许提供数据)自动编号标识列不允许提供数据 允许为空的字段不提供数据时必须使用允许为空的字段不提供数据时必须使用NULLNULL4.6.2 4.6.2 向数据表输入数据向数据表
15、输入数据17/25/25(4 4)一个)一个insert values insert values 语句只能向表中添加一条新语句只能向表中添加一条新 记录记录(5 5)只给表中部分字段提供数据时,必须指定字段列)只给表中部分字段提供数据时,必须指定字段列 表,不为空字段不能省略表,不为空字段不能省略(6 6)设置了默认值的字段使用默认值时,用)设置了默认值的字段使用默认值时,用defaultdefault代代 表默认数据表默认数据(7 7)字符型和日期型数据要用单引号扩起来)字符型和日期型数据要用单引号扩起来(8 8)值列表中可以嵌套使用子查询的数据,但必须用)值列表中可以嵌套使用子查询的数据
16、,但必须用 圆括号括起来圆括号括起来18/25/25例例Insert into 商品表商品表(货号,货名,规格,单位,参考价格货号,货名,规格,单位,参考价格)values(1003,计算机计算机,FZ,套套,5500)Insert into 商品表商品表 values(1003,计算机计算机,FZ,套套,default,5500,default)19/25/252)用用insert select 语句向表中添加记录语句向表中添加记录格式:格式:Insert 表名表名1 字段列表字段列表1 select*|字段列表字段列表2 from 表名表名2 where 条件表达式条件表达式 n表表2的字
17、段列表的字段列表2中字段个数、顺序和类型中字段个数、顺序和类型(*表示全部字表示全部字段)必须与表段)必须与表1的字段列表的字段列表1的个数、顺序和类型相兼容。的个数、顺序和类型相兼容。n若给表若给表1 中全部字段提供数据,则字段列表中全部字段提供数据,则字段列表1可以省略,但可以省略,但表表2的字段列表的字段列表2不能省略并且其顺序必须与表不能省略并且其顺序必须与表1字段的定义字段的定义顺序一致。顺序一致。n若给表若给表1中部分字段赋值,字段列表中部分字段赋值,字段列表1必须给出要添加数据必须给出要添加数据的列名,但要保证不提供数据的列必须是允许为空的。的列名,但要保证不提供数据的列必须是允
18、许为空的。20/25/25添加记录添加记录例:例:Use diannaoxsInsert 厂家地址表厂家地址表 select 供货商,厂家地址供货商,厂家地址 from 供货商表供货商表21/25/254.6.5 4.6.5 数据表数据的更新,编辑修改和删除数据表数据的更新,编辑修改和删除1 使用企业管理器管理修改更新数据使用企业管理器管理修改更新数据2 使用使用update语句修改更新数据语句修改更新数据格式格式:Update 表名表名1 set 列名列名=表达式表达式,n from 表名表名2|表名列表及连接方式表名列表及连接方式where 条件表达式条件表达式例例:Use diannao
19、xsUpdate 商品表商品表 set 参考价格参考价格=参考价格参考价格*0.97 where 货号货号=100322/25/253 数据表记录的删除数据表记录的删除格式格式:Delete 表名表名 from 其它表名其它表名 where 条件表达式条件表达式例例:delete aa表表 where Is null23/25/251 删除数据表删除数据表格式:格式:Drop talbe 表名,表名,n2 删除规则删除规则格式格式:Drop rule 规则名规则名,n3 删除默认值删除默认值格式格式:Drop default 默认名称默认名称,n24/25/25总结:总结:使用使用CREATE
20、 DATABASE CREATE DATABASE 语句创建数据库语句创建数据库使用使用DROP DATABASE DROP DATABASE 语句删除数据库语句删除数据库1.1.数据库文件数据库文件2.2.创建数据库创建数据库3.3.删除数据库删除数据库4.4.创建表创建表使用使用CREATE TABLE CREATE TABLE 语句创建表语句创建表25/25/25使用使用ALTER TABLE ALTER TABLE 语句修改表语句修改表使用使用DROP TABLE DROP TABLE 语句删除表语句删除表5.5.修改、删除表修改、删除表6.6.一个数据库可以包括多个表,一个数据库可以包括多个表,一个表可以包括多个字段一个表可以包括多个字段,同一个数据库的表名唯一,同一个数据库的表名唯一,同一个表的各列名唯一。同一个表的各列名唯一。
©2010-2024 宁波自信网络信息技术有限公司 版权所有
客服电话:4008-655-100 投诉/维权电话:4009-655-100