第5章创建和维护数据库表课件.ppt

上传人:春哥&#****71; 文档编号:12722976 上传时间:2022-04-25 格式:PPT 页数:66 大小:1.39MB
返回 下载 相关 举报
第5章创建和维护数据库表课件.ppt_第1页
第1页 / 共66页
第5章创建和维护数据库表课件.ppt_第2页
第2页 / 共66页
点击查看更多>>
资源描述

《第5章创建和维护数据库表课件.ppt》由会员分享,可在线阅读,更多相关《第5章创建和维护数据库表课件.ppt(66页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、返回本章首页返回本章首页上一页上一页下一页下一页15.1 定义表结构5.2 创建与管理表结构5.3 查看与管理表5.4 数据库数据的完整性上一章上一章返回目录返回目录返回本章首页返回本章首页上一页上一页下一页下一页2 所谓定义表结构就是设计表中应该包含哪些字段?各个字段应该选择哪种数据类型?各个字段值的宽度,以及该表与用户数据库中的哪些表相关。 为确定新表的结构,需要明确: 这个表将包含哪些类型的数据。 表中需要设置哪些字段。 哪些字段应确定为主键或外键。 哪些字段可以接受空值。 是否使用约束,如果要用的话,在何处使用。 是否需要建立索引。返回本章首页返回本章首页上一页上一页下一页下一页3 在

2、SQL Server 2000中,一个数据库中最多可以创建20亿个表,每个表最多可以定义1024个列(字段),每行最多可以存储 8,060 字节,表的行数及总大小仅受可用存储空间的限制。在同一数据库的不同表中,可以有相同的字段,但在同一表中不允许有相同的字段。 在数据库中表名必须是唯一的,但是,如果为表指定了不同的用户,就可以创建多个相同名称的表,即同一个名称的表可以有多个不同的所有者,在使用这些表时,需要在表的名称前面加上所有者的名称。返回本章首页返回本章首页上一页上一页下一页下一页41.使用企业管理器创建表使用企业管理器创建表 启动服务器,打开企业管理器,展开指定的服务器和数据库,打开想要

3、创建新表的数据库,右键单击表对象,从所弹出的快捷菜单中选择“新建表”,如图5-1所示,返回本章首页返回本章首页上一页上一页下一页下一页5图5-1 选择新建表 返回本章首页返回本章首页上一页上一页下一页下一页6 或是点击“操作”菜单下的“新建表”,或是在工具栏中选择图标,则会出现“设计表”对话框,如图5-2所示,在此对话框中,可以定义字段的相关属性:列名称,数据类型、长度、是否允许空值、描述、默认值、精度、小数位数、是否有标识、标识种子、标识递增量、公式、排序规则等,在这些属性当中,一般如描述、默认值、标识等可以不填。返回本章首页返回本章首页上一页上一页下一页下一页7图5-2 新建表对话框返回本

4、章首页返回本章首页上一页上一页下一页下一页8 填写完成后,单击图5-2中工具栏的保存按钮或直接关闭新建表对话框都会弹出“选择名称”对话框,如图5-3所示。输入新建表的名称后,单击【确定】按钮,即会将新表保存到数据库中去。图5-3 新建表名对话框返回本章首页返回本章首页上一页上一页下一页下一页92.使用使用Transact-SQL语言创建表语言创建表 基本的语法格式:基本的语法格式: CREATE TABLE table_name ( Column _name data_type NOT NULL|NULL, PRIMARY KEY) 主要参数说明:主要参数说明: table_name:用于指定

5、新建表的名称。表名必须符合标识符规则。对:用于指定新建表的名称。表名必须符合标识符规则。对于于数据库来说,表名应是唯一的。表名最长不能超过数据库来说,表名应是唯一的。表名最长不能超过128字符。字符。 Column_name::用于指定新建表的列名(字段),表名必须符合标识:用于指定新建表的列名(字段),表名必须符合标识符规则,并且在表内保持唯一。符规则,并且在表内保持唯一。 data_type:指定列的数据类型。:指定列的数据类型。 NULL | NOT NULL:是确定列中是否允许空值的关键字。从严格意义:是确定列中是否允许空值的关键字。从严格意义上讲,上讲,NULL 不是约束,但可以使用

6、与指定不是约束,但可以使用与指定 NOT NULL 同样的方法指定。同样的方法指定。 PRIMARY KEY:是通过唯一索引对给定的一列或多列强制实体完整:是通过唯一索引对给定的一列或多列强制实体完整性的约束。对于每个表只能创建一个性的约束。对于每个表只能创建一个 PRIMARY KEY 约束。约束。返回本章首页返回本章首页上一页上一页下一页下一页10 在对数据库表操作时,常常会涉及到对数据库表的重新命名,当重命名表时,表名在包含该表的各数据库关系图中自动更新。当保存表或关系图时,表名在数据库中被更新。 有两种方法重新命名表:返回本章首页返回本章首页上一页上一页下一页下一页111. 使用企业管

7、理器重新命名表使用企业管理器重新命名表 打开企业管理器,打开指定服务器中要修改的数据打开企业管理器,打开指定服务器中要修改的数据库中的表,用右键单击要进行修改的表,从弹出的库中的表,用右键单击要进行修改的表,从弹出的快捷菜单里选中快捷菜单里选中“重命名重命名”选项(如图选项(如图5-5(a)所)所示),便可企业管理器中重新命名表名。示),便可企业管理器中重新命名表名。返回本章首页返回本章首页上一页上一页下一页下一页12图5-5(a)在企业管理器中重命名表返回本章首页返回本章首页上一页上一页下一页下一页132使用使用Transact-SQL语言重命名表语言重命名表 使用使用Transact-SQ

8、L语言重新命名表名是在查语言重新命名表名是在查询分析器中调用系统的存储过程询分析器中调用系统的存储过程sp_rename为指为指定表重新命名表名。定表重新命名表名。 其基本语法格式:其基本语法格式: sp_rename old_table_name , new_table_name返回本章首页返回本章首页上一页上一页下一页下一页14 数据库中的表创建后,有时需要改变表中原先定义的一些选项,例如增加、删除或修改字段,更改表名或者是表的所有者、权限等。SQL Server提供了两种方法来完成表字段的修改,即使用企业管理器和在查询分析器中使用Transact-SQL语言修改表字段。返回本章首页返回本

9、章首页上一页上一页下一页下一页151. 使用企业管理器修改表字段使用企业管理器修改表字段 打开企业管理器,打开指定服务器中要修改的数据库中的表,用右键单击要进行修改的表,选中“设计表”菜单,则会弹出“设计表”对话框,如图5-2所示。在该对话框中可以完成对字段的相应修改。返回本章首页返回本章首页上一页上一页下一页下一页162使用使用Transact-SQL语言修改表字段语言修改表字段使用Transact-SQL语言修改表字段的命令是:ALTER TABLE其基本语法格式:ALTER TABLE table ADD COLUMN column_name data_type|ALTER COLUMN

10、 column_name new_data_type | DROP COLUMN column_name主要参数说明:table:用于指定要更改的表的名称。ADD COLUMN:指定要添加一个或多个列定义。column_name:是要更改、添加或删除列的名称。data_type:指定要添加列的数据类型ALTER COLUMN:指定要更改的列。new_data_type:指定列更改后的数据类型。DROP COLUMN: 用于指定从表中删除列。返回本章首页返回本章首页上一页上一页下一页下一页17 在数据库中创建一个表后,经常需要查看表中各种相关信息。例如表的属性、表中的定义的字段、表中的数据类型等

11、。有时也需要改变表中一些记录,例如增加、删除或修改表中记录等。返回本章首页返回本章首页上一页上一页下一页下一页18 查看表主要是查看表属性和表中的数据 1查看表属性查看表属性 打开指定的服务器和数据库,展开表选中要查看的表格,用鼠标右键单击该表(如图5-8所示),从弹出的快捷菜单中选择“属性”选项,就会弹出“表属性”窗口,并显示该表所定义的键码、各字段的名称、数据类型、大小(长度)等属性,如图5-9所示。单击【权限】按钮,还可以查看和修改表的权限。返回本章首页返回本章首页上一页上一页下一页下一页19图 5-8 选择表属性对话框返回本章首页返回本章首页上一页上一页下一页下一页20图5-9 表属性

12、窗口返回本章首页返回本章首页上一页上一页下一页下一页212查看表中数据查看表中数据 查看表中的数据可以使用企业管理器,还可以在查看表中的数据可以使用企业管理器,还可以在查询分析器中使用查询分析器中使用Transact-SQL语言查看表中的数据。语言查看表中的数据。 返回本章首页返回本章首页上一页上一页下一页下一页22(1)使用企业管理器查看表中记录)使用企业管理器查看表中记录 在企业管理器中,打开指定的数据库并展开表格,选在企业管理器中,打开指定的数据库并展开表格,选中要查看的表并用鼠标右键单击该表,从弹出的快捷中要查看的表并用鼠标右键单击该表,从弹出的快捷菜单中选择菜单中选择“打开表打开表”

13、选项,该项中有三个子菜单选项,该项中有三个子菜单(见图(见图5-10),其中),其中“返回所有行返回所有行”表示显示表中所表示显示表中所有记录;有记录;“返回首行返回首行”表示显示前表示显示前N条记录,要通过条记录,要通过对话框输入最大行数,如图对话框输入最大行数,如图5-11所示;所示;“查询查询”用于用于查询具体满足某项条件的记录。例如,选择了查询具体满足某项条件的记录。例如,选择了“返回返回所有行所有行”或或“返回首行返回首行”后,会在对话框中显示表中后,会在对话框中显示表中的数据,如图的数据,如图5-12所示。所示。返回本章首页返回本章首页上一页上一页下一页下一页23表5.10 选择打

14、开表对话框返回本章首页返回本章首页上一页上一页下一页下一页24图5.11 输入行数对话框返回本章首页返回本章首页上一页上一页下一页下一页25图5.12 显示表数据对话框 返回本章首页返回本章首页上一页上一页下一页下一页26(2)使用)使用Transact-SQL语言查看表中记录语言查看表中记录 使用Transact-SQL语言查看表中记录的命令是:SELECT SELECT查询语句是Transact-SQL语言最重要的功能性语句之一,它的功能主要是从一个表或多个表中筛选出符合指定条件的记录。 SELECT语句最简单的语法格式: SELECT fields FROM table WHERE se

15、arch_condition 主要参数: fields:表示需要检索字段的列表,字段名称之间使用逗号分隔。 table:指定检索数据的数据源表。 search_condition:筛选条件。返回本章首页返回本章首页上一页上一页下一页下一页27 向表中添加数据可以使用企业管理器,也可以在查询分析器中使用Transact-SQL语言向表中添加数据。 1使用企业管理器向表中添加记录使用企业管理器向表中添加记录 在企业管理器中,打开指定的数据库并展开表,在右边的窗口中选中需要添加记录的表,用鼠标右键单击该表,从弹出的快捷菜单中选择“打开表”选项,再选择“返回所有行”,这时将在对话框中显示该表的数据,可

16、以在空行处输入要添加的记录(见图5-12) 返回本章首页返回本章首页上一页上一页下一页下一页282使用使用Transact-SQL语言向表中添加记录语言向表中添加记录 使用Transact-SQL语言向表中添加记录的命令是:INSERT 其基本语法格式: INSERT INTO table_name (column_list ) VALUES( DEFAULT | NULL | expression ,.n ) 主要参数说明: table_name:将要接收数据的表的名称。 column_list:要在其中插入数据的一列或多列的列表。必须用圆括号将 column_list 括起来,并且用逗号进

17、行分隔。 VALUES:引入要插入的数据值的列表。 DEFAULT:强制 SQL Server 装载为列定义的默认值。 Expression:一个常量、变量或表达式。返回本章首页返回本章首页上一页上一页下一页下一页29 使用企业管理器和在查询分析器中使用Transact-SQL语言可以删除表中指定的记录。 1使用企业管理器删除表中记录使用企业管理器删除表中记录 在企业管理器中,打开指定的数据库并展开表格,在右边的窗口中用鼠标右键单击要修改的表,从弹出的快捷菜单中选择“打开表”选项,选择“返回所有行”或“返回首行”后,会在对话框中显示表中的数据(见图5-15),此时选中要删除的记录,点击鼠标右键

18、,从弹出的快捷菜单中选择并点击“删除”选项,可以删除该记录。返回本章首页返回本章首页上一页上一页下一页下一页30图5-15 删除记录对话框返回本章首页返回本章首页上一页上一页下一页下一页312使用使用Transact-SQL语言删除表中记录语言删除表中记录 使用Transact-SQL语言删除表中记录的命令是:DELETE 其基本语法格式: DELETE FROM table_name WHERE search_condition返回本章首页返回本章首页上一页上一页下一页下一页32 使用企业管理器或使用使用企业管理器或使用Transact-SQL语言可以语言可以对表中记录值进行修改。对表中记录

19、值进行修改。 1使用企业管理器对表中记录进行修改使用企业管理器对表中记录进行修改 在企业管理器中,打开指定的数据库并展开表格,在右边的窗口中用鼠标右键单击要修改的表,从弹出的快捷菜单中选择“打开表”选项,选择“返回所有行”或“返回首行”后,将在对话框中显示表中的数据(见图5-12),此时可对相关记录值进行修改。返回本章首页返回本章首页上一页上一页下一页下一页332使用使用Transact-SQL语言对表中记录进行修改语言对表中记录进行修改使用Transact-SQL语言对表中记录值进行修改的命令是:UPDATE其基本语法格式:UPDATE table_name SET column_name

20、= expression | DEFAULT | NULL WHERE 主要参数说明:table_name:需要修改的表的名称。 SET:指定要修改的列或变量名称的列表。column_name:含有要修改数据的列的名称。expression:变量、表达式。DEFAULT:指定使用该列定义的默认值替换列中的现有值。WHERE:指定条件来限定所修改的行。 search_condition:为要修改行指定需要满足的条件。 返回本章首页返回本章首页上一页上一页下一页下一页34 可以使用企业管理器和在查询分析器中使用可以使用企业管理器和在查询分析器中使用Transact-SQL语言删除指定表。语言删除指

21、定表。1使用企业管理器删除表使用企业管理器删除表 打开企业管理器,展开指定的数据库和表,用鼠标右键单击要删除的表,从弹出的快捷菜单中选择“删除”选项,则会出现“除去对象”对话框,如图5-16所示。单击【全部除去】按钮,即可删除表。单击【显示相关性】按钮,则会出现“相关性”对话框,该对话框列出了该对象所依赖的对象和依赖于该表的对象,当有对象依赖于该表时,该表就不能删除。返回本章首页返回本章首页上一页上一页下一页下一页35图5-16 除去对象对话框返回本章首页返回本章首页上一页上一页下一页下一页36使用使用Transact-SQL语言删除表语言删除表 使用Transact-SQL语言删除表的命令是

22、:DROP 其基本语法格式:DROP TABLE table_name主要参数说明:table_name:是要删除的表名。 DROP TABLE语句可以删除一个表的结构和表中的数据及其与表有关的所有索引、触发器、约束、许可对象。返回本章首页返回本章首页上一页上一页下一页下一页375.4.1 数据库数据的完整性概述 数据库数据的完整性是指数据库运行时,应防止输入或输出出现不符合语义的错误数据,而始终保持其数据的正确性。数据库的完整性描述是数据库内容的完整性约束集合,对一个数据库进行操作时,首先要判定其是否符合完整性约束,全部判定无矛盾时才可以执行。数据的完整性要确保数据库中数据的一致、准确,因此

23、,满足数据完整性要求的数据应具有以下特点: (1)数据类型准确无误 (2)数据的值满足范围设置 (3)同一表格数据之间不存在冲突 (4)多个表格数据之间不存在冲突返回本章首页返回本章首页上一页上一页下一页下一页382.数据完整性包括四类:实体的完整性实体的完整性(Entity Integrity)域完整性域完整性(Field Integrity)引用完整性引用完整性(Reference Integrity)用户定义完整性用户定义完整性返回本章首页返回本章首页上一页上一页下一页下一页391.实体的完整性实体的完整性(Entity Integrity) 实体的完整性保证一个表中的每一行必须是惟一的

24、,也就是不允许输入完全相同的数据记录。实体的完整性可以通过设定索引、惟一性约束、主键约束等多种方法来实现,例如,如果在读者表中已经存在学生证号为“210001”的记录,那么,在试图添加一个学生证号为“210001”的记录时,SQL Server将拒绝向数据表中添加该记录。返回本章首页返回本章首页上一页上一页下一页下一页402.域完整性域完整性(Field Integrity) 域完整性保证一个数据库不包含无意义的或不合理的值,即要求数据表中的数据位于某一个特定的允许范围内。可以使用默认值(DEFAULT)、检查(CHECK)约束、外键(FOREIGN KEY)约束和规则(RULE)等多种方法来

25、实现域的完整性。例如,如果限定“性别”字段的数据值为“男”或“女”,那么可以使用CHECK约束,这样若输入了其它值将被SQL Server 2000拒绝接受。返回本章首页返回本章首页上一页上一页下一页下一页413.引用完整性引用完整性(Reference Integrity) 引用完整性定义了一个关系数据库中不同的列和不同的表之间的关系(主键与外键),它是用来维护相关数据表之间数据一致性的手段,通过实现引用完整性,可以避免因一个数据表的记录改变而造成另一个数据表内的数据变成无效的值。在输入或删除记录时,引用完整性将保持表之间已定义的关系,确保键值在所有表中一致。返回本章首页返回本章首页上一页上

26、一页下一页下一页424用户定义完整性用户定义完整性用户定义完整性使用户得以定义不属于其它任何完整性分类的特定业务规则。由于每个用户的数据库都有自己独特的业务规则集,所以系统必须有一种方式来实现定制的业务规则,即定制的数据完整性约束。用户定义完整性可以通过用户定义数据类型、规则、存贮过程和触发器来实现。返回本章首页返回本章首页上一页上一页下一页下一页43 利用约束可以实现数据库数据的完整性,约束包括:主键约束(PRIMARY KEY)、惟一性约束(UNIQUE)、检查性约束(CHECK)、外部键约束(FOREIGN KEY)、默认约束(DEFAULT)和级联引用完整性约束。返回本章首页返回本章首

27、页上一页上一页下一页下一页44 PRIMARY约束(主键约束)可以在表中定义一个主键,它是一个列或列的组合,它是唯一确定表中每一条记录的标识符,主键约束是最重要的一种约束。一个表只能有一个主键约束,而且主键约束的列不能接受空值。 主键约束的添加、删除和修改可以使用企业管理器或在查询分析器中使用Transact-SQL语言实现。返回本章首页返回本章首页上一页上一页下一页下一页451使用企业管理器设置主键约束使用企业管理器设置主键约束 在企业管理器中,用鼠标右键单击要操作在企业管理器中,用鼠标右键单击要操作的数据库表,从弹出的快捷菜单中选择的数据库表,从弹出的快捷菜单中选择“设计设计表表”选项,弹

28、出选项,弹出“设计表设计表”对话框(见图对话框(见图5-17)。在该对话框中,选择要设定为主键的字)。在该对话框中,选择要设定为主键的字段(如果需要选定多个字段,在按住段(如果需要选定多个字段,在按住Ctrl键的键的同时,用鼠标单击每一个要选的字段),然后同时,用鼠标单击每一个要选的字段),然后右键单击选中的字段,从弹出的快捷菜单中选右键单击选中的字段,从弹出的快捷菜单中选择择“设置主键设置主键”选项,如图选项,如图5-18所示(或单击所示(或单击工具栏上的按钮来设置主键),被设置为主键工具栏上的按钮来设置主键),被设置为主键的字段左端出现标志。的字段左端出现标志。返回本章首页返回本章首页上一

29、页上一页下一页下一页46图5-17 设置主键对话框返回本章首页返回本章首页上一页上一页下一页下一页47图5-18 删除主键对话框返回本章首页返回本章首页上一页上一页下一页下一页482使用使用Transact-SQL语言设置主键约束语言设置主键约束 使用使用Transact-SQL语言设置主键约束的命令是:语言设置主键约束的命令是:CONSTRAINT - PRIMARY 基本语法格式:基本语法格式: CONSTRAINT constraint_name PRIMARY KEY CLUSTERED | NONCLUSTERED (column_name ,.n ) 主要参数说明:主要参数说明:

30、constrain_name:是约束的名称。:是约束的名称。 CLUSTERED | NONCLUSTERED:是表示为指定约束创建聚:是表示为指定约束创建聚集索引或非聚集索引的关键字。集索引或非聚集索引的关键字。PRIMARY KEY 约束默认为约束默认为 CLUSTERED,UNIQUE 约束默认为约束默认为 NONCLUSTERED。 Column_name:用于指定主键约束的列名。:用于指定主键约束的列名。返回本章首页返回本章首页上一页上一页下一页下一页49 UNIQUE 约束(惟一性约束)用于指定一个列值或者多个列的组合值具有惟一性,以防止在列中输入重复的值。 创建和修改惟一性约束的

31、操作方法也有两种。 当设置惟一性约束时,需要考虑以下几个因素:(1)惟一性约束主要用于非主键的一列或列组合。(2)一个表可以设置多个 UNIQUE 约束,而只能设置一个 PRIMARY KEY 约束。(3)使用惟一性约束的字段允许空值 返回本章首页返回本章首页上一页上一页下一页下一页501.使用企业管理器创建和修改惟一性约束使用企业管理器创建和修改惟一性约束 打开企业管理器,打开指定的服务器和数据库,选择“表”选项,在右栏窗口中用鼠标右键单击选定的表格,并从弹出的菜单中选择“设计表”选项,将出现“设计表”对话框,在该对话框中右击需要设置惟一性约束的字段,从弹出的快捷菜单中选择“索引”选项,则出

32、现“属性”对话框的“索引/键”选项卡,如图5-19所示。在“索引/键”选项卡中点击【新建】按钮,然后选择“创建UNIQUE”和“约束”,在“列名”下展开列的列表,选择要将约束附加的列,然后单击【关闭】按钮,最后在“表格编辑”对话框中选择【保存】按钮,即可使完成惟一性约束的创建和修改。返回本章首页返回本章首页上一页上一页下一页下一页51图5-19 创建惟一性约束对话框返回本章首页返回本章首页上一页上一页下一页下一页522使用使用Transact-SQL语言创建惟一性约束语言创建惟一性约束 使用使用Transact-SQL语言创建惟一性约束的命令是:语言创建惟一性约束的命令是:CONSTRAINT

33、 - UNIQUE 其基本语法格式:其基本语法格式: CONSTRAINT constraint_name UNIQUE CLUSTERED | NONCLUSTERED (column_name ,.n ) 主要参数说明:主要参数说明: constrain_name:是约束的名称。约束名在数据库内必须是唯:是约束的名称。约束名在数据库内必须是唯一的。如果不指定约束名,则系统会自动生成一个约束名。一的。如果不指定约束名,则系统会自动生成一个约束名。 CLUSTERED | NONCLUSTERED:是表示为指定约束创建聚:是表示为指定约束创建聚集或非聚集索引的关键字。集或非聚集索引的关键字。P

34、RIMARY KEY 约束默认为约束默认为 CLUSTERED,UNIQUE 约束默认为约束默认为 NONCLUSTERED。 column_name:用于指定惟一性约束的列名。:用于指定惟一性约束的列名。返回本章首页返回本章首页上一页上一页下一页下一页53 CHECK约束通过检查一个或多个字段的输入值是否符合设定的检查条件来强制数据的完整性,如果输入值不符合检查条件,系统将拒绝这条记录。 创建检查约束常用的操作方法主要有两种:返回本章首页返回本章首页上一页上一页下一页下一页541.使用企业管理器创建检查性约束使用企业管理器创建检查性约束 同惟一性约束的创建类似,在打开同惟一性约束的创建类似,

35、在打开“表设计表设计”对对话框后,用鼠标右键单击要设置的检查约束的字段,话框后,用鼠标右键单击要设置的检查约束的字段,从弹出的快捷菜单中选择从弹出的快捷菜单中选择“属性属性”(见图(见图5-19),),然后在属性对话框中选择然后在属性对话框中选择“CHECK约束约束”选项卡,选项卡,单击【新建】按钮,就可以在约束表达式栏中输入单击【新建】按钮,就可以在约束表达式栏中输入检查约束的表达式,输入完检查约束后,在检查约束的表达式,输入完检查约束后,在“约束约束名名”文本框中输入约束的名称,然后单击【关闭】文本框中输入约束的名称,然后单击【关闭】按钮,即完成了检查性约束的设置。按钮,即完成了检查性约束

36、的设置。返回本章首页返回本章首页上一页上一页下一页下一页552.使用使用Transact-SQL语言创建检查约束语言创建检查约束 使用Transact-SQL语言创建检查约束的命令是:CONSTRAINT - CHECK 其基本语法格式: CONSTRAINT constraint_name CHECK NOT FOR REPLICATION (logical_expression) 主要参数说明: constrain_name:是约束的名称。 NOT FOR REPLICATION:用于指定在把从其它表中复制的数据插入到该表时检查约束对其不发生作用。 logical_expression:用

37、于指定逻辑条件表达式,返回值为TRUE或者FALSE。返回本章首页返回本章首页上一页上一页下一页下一页56 FOREIGN KEY约束(外键约束)用于强制参照完整性,提供单个字段或者多个字段的参照完整性,外键 (FK) 主要用于维护两个表之间的一致性关系。外键的设置主要是通过将一个表中主键所在的列包含到另一个表中,这个列就是另一个表的外键。 尽管设置外键约束的主要目的是控制存储在外键表中的数据,但它还可以控制主键表中数据的修改。 设置外键约束常用的操作方法有两种 :返回本章首页返回本章首页上一页上一页下一页下一页571.用企业管理器设置外键约束用企业管理器设置外键约束 在企业管理器中展开指定数

38、据库,右键单击对象“关系图”,从弹出的快捷菜单中选择“新建数据库关系图”选项,则将出现“创建数据库关系图向导”对话框,该向导会引导用户将所需要的表添加到数据库关系图中。如果不想使用“创建数据库关系图向导”选择相关表,可以单击【取消】按钮,然在出现的“新关系图”对话框中,单击鼠标右键,从弹出的快捷菜单中选择“添加表”选项(或单击工具栏上的图标),从添加表中选择要建立的关系图的表,表格添加完后,将出现如图5-20所示的“新关系图”对话框。在该对话框中,单击主键字段,并在按住鼠标左键的同时拖动只需要建立连接的外键字段处,然后释放即可建立连接。此时可以看到在两个表之间有一个箭头,然后单击【保存】按钮时

39、,将会弹出“另存为”对话框(见图5-21),输入关系图名称并单击【确定】按钮,即完成外键约束的创建。返回本章首页返回本章首页上一页上一页下一页下一页58图5-21 新关系图对话框返回本章首页返回本章首页上一页上一页下一页下一页59图5-21 保存关系图对话框返回本章首页返回本章首页上一页上一页下一页下一页602使用使用Transact-SQL语言设置外键约束语言设置外键约束使用Transact-SQL语言设置外键约束的命令是:CONSTRAINTFOREIGN KEY其基本语法格式:CONSTRAINT constraint_name FOREIGN KE(column_name,n)REFE

40、RENCES ref_table ( ref_column,n )主要参数说明:REFERENCES:用于指定要建立关联表的信息ref_table:用于指定要建立关联的表的名称。ref_column:用于指定要建立关联的表中的相关列的名称。返回本章首页返回本章首页上一页上一页下一页下一页61设置外键约束时,需要考虑以下几个因素:(1)外键中的字段数目和每个字段指定的数据类型都必须和REFERENCES从句中的字段相匹配。(2)若要修改外键约束的数据,必须要有参考表的SELECT权限或者REFERENCES权限。(3)主键和外键的数据类型必须严格匹配。返回本章首页返回本章首页上一页上一页下一页下

41、一页62DEFAULT通过指定的列的默认值,来强制实现完整性,即每当用户没有对某一列输入值时,则将所定义的默认值提供给这一列。DEFAULT定义不能添加到具有timestamp数据类型、IDENTITY属性、现有的DEFAULT定义或绑定默认值的列。如果列已有默认值,必须除去旧默认值后才能添加新默认值。返回本章首页返回本章首页上一页上一页下一页下一页63默认约束可以包括常量、函数或者空值。使用默认约束时应该注意以下几点:(1)只能在当前数据库中创建默认值的名称;(2)每个字段只能定义一个默认约束;(3)如果默认值对于它所绑定的列而言太长,该值就会被截断;创建默认约束的常用的方法有两种。返回本章

42、首页返回本章首页上一页上一页下一页下一页641. 使用企业管理器创建默认约束使用企业管理器创建默认约束 在企业管理器中打开“设计表”对话框,选定要设置默认约束的字段后,在默认值栏中输入该字段的默认值,即可创建默认约束,如图5-17所示。返回本章首页返回本章首页上一页上一页下一页下一页65图5-17 创建默认约束对话框返回本章首页返回本章首页上一页上一页下一页下一页661. 使用使用Transact_SQL语言创建默认约束语言创建默认约束 使用Transact_SQL语言创建默认约束的命令是:CONSTRAINT - DEFAULT 其基本语法格式: CONSTRAINT constraint_name DEFAULT constant_expression FOR column_name 主要参数说明: constraint_name:约束名 constant_expression:约束表达式 column_name: 用于指定默认约束的列名

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 小学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com