SQL Server数据库项目8教学ppt课件.pptx

上传人:春哥&#****71; 文档编号:87512049 上传时间:2023-04-16 格式:PPTX 页数:61 大小:1.05MB
返回 下载 相关 举报
SQL Server数据库项目8教学ppt课件.pptx_第1页
第1页 / 共61页
SQL Server数据库项目8教学ppt课件.pptx_第2页
第2页 / 共61页
点击查看更多>>
资源描述

《SQL Server数据库项目8教学ppt课件.pptx》由会员分享,可在线阅读,更多相关《SQL Server数据库项目8教学ppt课件.pptx(61页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、SQL Server数据库项目8教学课件PART 01项目1初识数据库PART 02项目2SQL Server 2017的安装与使用PART 03项目3数据库操作PART 05项目5查询操作PART 06项目6T-SQL语言PART 07项目7视图操作目录CONTENTSPART 04项目4数据表操作PART 08项目8数据完整性PART 09项目9存储过程PART 10项目10触发器PART 11项目11备份与恢复PART 12项目12数据库安全PART 08项目8数据完整性8.1 创建并管理规则8.2 PRIMARY KEY约束8.3 创建FOREIGN KEY约束任务8.1 创建并管理规

2、则8.1 创建并管理规则【任【任务描述】描述】规则就是要求大家遵守的制度或章程。那什么是数据就是要求大家遵守的制度或章程。那什么是数据库规则呢?呢?简单地地说,数据,数据库规则就就是是对数据数据库中某一字段的数据中某一字段的数据进行行约束,束,让它它们处于于规定的范定的范围内。内。规则提供了一种在数提供了一种在数据据库中中实现域完整性和用域完整性和用户定定义完整性的方法。在完整性的方法。在SQLServerSQLServer数据数据库中,中,规则分分为数据数据库级规则和表和表级规则,二者的区,二者的区别在于在于应用范用范围。本任本任务要求要求对studentstudent数据数据库中的某一字段

3、中的某一字段创建一个建一个规则,让这一字段的所有数据一字段的所有数据值都遵都遵守守这一一规则。【任【任务分析】分析】对于存于存储在数据在数据库中的数据来中的数据来说,有的数据不需要做任何的限制,但是有的数据就需要通,有的数据不需要做任何的限制,但是有的数据就需要通过一些手段去限制其一些手段去限制其值的范的范围。本任。本任务分分别使用数据使用数据库级规则和表和表级规则为CScore_tableCScore_table表中的表中的“CScore”“CScore”字段字段创建一个建一个规则。完成完成该任任务需要做到以下几点:需要做到以下几点:(1 1)创建并管理数据建并管理数据库级规则。(2 2)创

4、建并管理表建并管理表级规则。8.1 创建并管理规则【任【任务实现】1.1.创建并管理数据建并管理数据库级规则步步骤0101:新建:新建查询。启。启动SSMSSSMS,在,在“对象象资源管理器源管理器”中展开数据中展开数据库“student”“student”节点,点,右右击,在,在弹出的快捷菜出的快捷菜单中中选择“新建新建查询”;或者启;或者启动SSMSSSMS后,后,单击标准工具准工具栏上的上的“新建新建查询”按按钮,在,在SQLSQL编辑器工具器工具栏上的可用数据上的可用数据库列表中列表中选择“student”“student”为当前数据当前数据库,如,如图8-18-1所示。所示。8.1

5、创建并管理规则步骤02:创建数据库级规则。在查询编辑器中输入如下语句并执行,结果如图8-2所示。CREATERULECScore_rule-创建一个限定成绩介于0100的规则AS CScore=0 and CScore=0andCScore=0andCScore18 and Age18 and Age50)步骤步骤0505:查看约束。在SSMS中依次展开“student”“表”“UserFile”“约束”节点,如图8-13所示。8.1 创建并管理规则步骤06:检查约束。双击约束“CK_UserFile_Age_619B8048”,即可打开“检查约束”对话框检查约束,如图8-14所示。8.1 创

6、建并管理规则【相关知识】1.数据完整性数据完整性(Data Integrity)是指数据的可靠性(Reliability)和精确性(Accuracy)。它可以防止数据库中存在不符合语义规定或者其他规则的数据,可以防止因错误信息的输入、输出造成无效操作或错误信息。2.数据完整性的分类(1)实体完整性。实体完整性将记录(行)定义为特定表的唯一实体,即每一行数据都反映不同的实体,不能存在相同的数据行。通过索引、UNIQUE(唯一)约束、PRIMARY KEY(主键)约束、标识列属性(IDENTITY)来实现实体完整性。(2)域完整性。域完整性是指数据表中的字段必须满足某种特定的数据类型或约束。域完整

7、性通常使用有效性检查来实现,还可以通过数据类型、格式和有效的数据范围等来实现。(3)参照完整性。参照完整性也称为引用完整性,是指相关联的两个表之间的约束,具体地说,就是外键表中每条外键记录的值必须是主键表相应字段中存在的数据。因此,如果在两个表之间建立了关联关系,则对一个关系进行的操作会影响另一个表中的记录。(4)用户定义完整性。用户定义完整性用来定义特定的规则,是数据库中用户根据自己的需要实施的数据完整性要求。用户定义完整性可通过自定义数据类型、规则、存储过程和触发器来实现。8.1 创建并管理规则3.实现数据完整性的方法SQL Server提供了一些帮助用户实现数据完整性的工具,常用的有:规

8、则、默认值和触发器等。4.数据库级和表级规则数据库级和表级规则的主要区别在于作用的范围不同。数据库级规则创建于数据库中,创建时与任何表和字段都没有关系,需要用户绑定到指定的字段中。一个数据库级规则可以绑定多个字段,对这些字段起到规范的作用。表级规则创建于表中,创建时就必须指定目标字段,也只对这一个字段起到规范的作用。8.1 创建并管理规则5.5.操作实例操作实例【例【例8-18-1】本操作实例要求分别使用数据库级和表级规则来规范性别字段的数值,要求设置本操作实例要求分别使用数据库级和表级规则来规范性别字段的数值,要求设置Student_tableStudent_table表中表中“Sex”“S

9、ex”字段中只能有男和字段中只能有男和女两种数据。女两种数据。(1 1)使用数据库级规则。)使用数据库级规则。步骤步骤0101:创建数据库级规则。首先在:创建数据库级规则。首先在SSMSSSMS中将当前数据库设置为中将当前数据库设置为“Student”“Student”,然后新建查询,在查询编辑器中输入如下创建规则语句。,然后新建查询,在查询编辑器中输入如下创建规则语句。CREATE RULE Sex_Rule AS Sex in(男,女)步骤步骤0202:绑定规则。将刚才创建的规则绑定到目标字段中。在查询编辑器中输入如下绑定规则语句。EXEC sp_bindrule Sex_Rule,Stu

10、dent_table.Sex步骤步骤0303:解除绑定。如果不再需要该规则来规范“Sex”字段的数值,则可以解除绑定。解除并不是删除规则。步骤步骤0404:删除规则。规则一旦失去作用,可以删除。EXEC sp_unbindrule Student_table.SexDROP RULE Sex_Rule8.1 创建并管理规则(2)使用表)使用表级规则级规则。步步骤骤01:在:在SSMS中打开目中打开目标标数据表数据表“Student_table”节节点,右点,右击击“约约束束”子子节节点,在点,在弹弹出的快出的快捷菜捷菜单单中中选择选择“新建新建约约束束”,打开,打开“检查约检查约束束”对话对话

11、框,如框,如图图8-15所示。所示。8.1 创建并管理规则步骤02:单击“常规”栏中“表达式”文本框右侧的“打开”按钮,打开“CHECK约束表达式”对话框。在“表达式”文本框中输入约束“Sex in(男,女)”,如图8-16所示。依次关闭对话框,并保存表的修改,这样就为Student_table数据表中“Sex”字段就创建了CHECK约束,规定其数据或者是男,或者是女。8.1 创建并管理规则步骤03:如果规则不再需要,可以删除。先打开“检查约束”对话框,然后选中上题创建的规则“CK_Student_table”,单击对话框下方的“删除”按钮,如图8-17所示,再依次关闭对话框,并保存表的修改,

12、即可完成删除。任务8.2 PRIMARY KEY约束8.2 PRIMARY KEY约束【任【任务描述】描述】PRIMARYKEYPRIMARYKEY约束,又称主束,又称主键约束,束,顾名思名思义就是主要的、关就是主要的、关键的的约束。那么束。那么为什么要在什么要在表中建立主表中建立主键约束呢?因束呢?因为主主键是表中的一个或多个字段,它的是表中的一个或多个字段,它的值用于唯一地用于唯一地标识表中的表中的某一条某一条记录。本任。本任务将介将介绍如何如何创建主建主键约束。束。【任【任务分析】分析】主主键是一种唯一关是一种唯一关键字,表定字,表定义的一部分。一个表只能有一个主的一部分。一个表只能有一

13、个主键,并且主,并且主键的字段不能的字段不能包含空包含空值,也不能重复。,也不能重复。完成完成该任任务需要做到以下几点:需要做到以下几点:(1 1)使用界面方式)使用界面方式创建主建主键约束。束。(2 2)使用命令方式)使用命令方式创建主建主键约束。束。8.2 PRIMARY KEY约束【任【任务实现】1.1.通通过界面方式界面方式创建主建主键约束束步步骤0101:启:启动SSMSSSMS,从目,从目标数据数据库“student”“student”中找到目中找到目标数据表数据表“UserFile”“UserFile”,右,右击“UserFile”“UserFile”表表节点,在点,在弹出的快捷

14、菜出的快捷菜单中中选择“设计”,打开数据表,打开数据表结构构设计窗体。窗体。步步骤0202:右:右击“列名列名”栏目中的目中的“ID”“ID”字段,在字段,在弹出的快捷菜出的快捷菜单中中选择“设置主置主键”,完,完成主成主键的的创建,如建,如图8-188-18所示。主所示。主键设置成功后,列名的前面会出置成功后,列名的前面会出现8.2 PRIMARY KEY约束步步骤0303:如果要取消已:如果要取消已设置主置主键字段的主字段的主键约束,束,则右右击该主主键字段,在字段,在弹出的快捷菜出的快捷菜单中中选择“删除主除主键”即可,如即可,如图8-198-19所示。所示。8.2 PRIMARY KE

15、Y约束1通过命令方式创建主键约束步骤01:创建表时设置主键。通过命令方式创建数据表时,可以直接为指定字段创建主键约束。例如在创建“TeacherFile”数据表时,直接为ID字段设定主键约束。新建查询,并在查询编辑器中输入如下语句,然后单击SSMS工具栏中的“执行”按钮,结果如图8-20所示。CREATE TABLE TeacherFile(ID int Primary key)8.2 PRIMARY KEY约束步骤02:在已有表中创建主键。如果要在已经创建完成的数据表中指定主键约束,则需要修改表的结构。例如,在已创建的TeacherFile数据表中为“ID”字段创建主键约束,可在查询编辑器中

16、输入如下语句。(如果TeacherFile数据表中已经为“ID”字段创建了主键,那么需要先删除此主键,再执行如下语句。)单击SSMS工具栏中的“执行”按钮,结果如图8-21所示。ALTER TABLE TeacherFileADD CONSTRAINT tf_PRIMARY PRIMARY KEY CLUSTERED(ID)8.2 PRIMARY KEY约束【相关知识】1.什么是主键主键是SQL Server数据库中能够唯一标识数据表中的每个记录的字段或者字段的组合。在主键中,不同的记录对应的字段取值不同(唯一性),也不能是空白(非空性)。用户通过这个字段中不同的值便可区别表中各条记录,就像通

17、过身份证号码来区别不同的人一样。数据表中作为主键的字段就像身份证号一样,必须确保每个记录中的值都不相同,这样才能根据主键的值来确定不同的记录。主键可以唯一识别一个表的每一行记录,但这只是其作用的一部分。主键的另一个作用是将记录和存放在其他表中的数据进行关联。在这一点上,主键是不同表中各记录的简单指针。2.PRIMARY KEY约束注意事项(1)一个表只能包含一个PRIMARY KEY约束。(2)由PRIMARY KEY约束生成的索引不会使表中的非聚集索引超过999个、聚集索引超过1个。(3)如果没有为PRIMARY KEY约束指定CLUSTERED或NONCLUSTERED,并且没有为UNIQ

18、UE约束指定聚集索引,则将对该PRIMARY KEY约束使用CLUSTERED。(4)PRIMARY KEY约束中的所有字段都必须指定为NOT NULL。如果没有指定为NOT NULL,则加入PRIMARY KEY约束的所有字段的NULL值属性都将被设置为NOT NULL。8.2 PRIMARY KEY约束3.3.建立主建立主键应遵循的原遵循的原则(1 1)主)主键应当是当是对用用户没有意没有意义的。主的。主键只是用来唯一只是用来唯一标识一行数据,最好不使用某一具有一行数据,最好不使用某一具有实际含含义的字段作的字段作为主主键。(2 2)永)永远不要更新主不要更新主键。因。因为主主键除了用来唯

19、一除了用来唯一标识一行数据之外,再没有其他的用途,所以没有理由一行数据之外,再没有其他的用途,所以没有理由对它更新。如它更新。如果需要更新主果需要更新主键,则说明明“主主键应当是当是对用用户没有意没有意义的的”这一原一原则被被违反了。反了。(3 3)主)主键不不应包含包含动态变化的数据,如化的数据,如时间戳、戳、创建建时间字段、修改字段、修改时间字段等。字段等。(4 4)主)主键应当由当由计算机自算机自动生成。如果用生成。如果用户对主主键的的创建建进行了干行了干预,就会使它,就会使它带有有“唯一唯一标识一行数据一行数据”以外的意以外的意义。一旦越。一旦越过这个界限,用个界限,用户就可能就可能产

20、生修改主生修改主键的的动机。如果机。如果这种用来种用来链接接记录行、管理行、管理记录行的关行的关键手段被不了解手段被不了解数据数据库设计的人的人员采用,可能采用,可能产生意想不到的生意想不到的严重后果。重后果。8.2 PRIMARY KEY约束5.操作操作实实例例【例【例8-2】本操作】本操作实实例用于例用于实现对实现对数据表数据表创创建主建主键键。分。分别别通通过过界面方式和命令方式完成主界面方式和命令方式完成主键键的的创创建。建。执执行下列行下列语语句,在数据句,在数据库库中中创创建建实实例表例表“Admin”。CREATE TABLE Admin(ID int not null,Name

21、 char(8),Password varchar(18)下面根据要求在该表中的ID字段上创建主键。(1)通过界面方式创建主键。打开SSMS,在目标数据库“student”中右击“Admin”表节点,在弹出的快捷菜单中选择“设计”,进入数据表结构设计窗体,右击“ID”字段,在弹出的快捷菜单中选择“设置主键”即可。(2)通过命令方式创建主键。在查询编辑器中输入如下语句即可。8.2 PRIMARY KEY约束【任【任务务描述】描述】FOREIGN KEY约约束,又称外束,又称外键约键约束。通俗地束。通俗地说说,外,外键约键约束就是束就是实现实现表与表之表与表之间间关关联联的的约约束,通束,通过这过

22、这种关种关联联可确保数据的可确保数据的完整性和一致性。本任完整性和一致性。本任务务将介将介绍绍如何通如何通过过界面方式和命令方式界面方式和命令方式创创建建FOREIGN KEY约约束。束。【任【任务务分析】分析】在数据在数据库设计过库设计过程中,通常会遇到两个不同数据表中某些字段之程中,通常会遇到两个不同数据表中某些字段之间间存在一定关存在一定关联联的情况。也就是的情况。也就是说说在不同的表中,会分在不同的表中,会分别别存在一个具有相同含存在一个具有相同含义义的字段,而且其中一个字段的的字段,而且其中一个字段的值获值获取于另一取于另一张张数据表中数据表中对应对应的字段。的字段。这时这时就需要将

23、就需要将获获取数取数值值的的字段字段设设置置为为外外键键,并与被,并与被获获取数取数值值的字段建立关的字段建立关联联。完成完成该该任任务务需要做到以下几点:需要做到以下几点:(1)通)通过过界面方式界面方式创创建外建外键约键约束。束。(2)通)通过过命令方式命令方式创创建外建外键约键约束。束。8.2 PRIMARY KEY约束【任务实现】1.通过界面方式创建外键约束步骤01:在SSMS中依次展开“Student”“表”“UserFile”节点,右击“键”子节点,在弹出的快捷菜单中选择“新建外键”,打开“外键关系”对话框,如图8-22所示。8.2 PRIMARY KEY约束步骤02:在“外键关系

24、”对话框的“常规”栏中单击“表和列规范”文本框右侧的“打开”按钮,打开“表和列”对话框,如图8-23所示。8.2 PRIMARY KEY约束步步骤0303:在:在“表和列表和列”对话框中框中设置主置主键表、外表、外键表及表及对应字段。在字段。在“主主键表表”下拉列表中下拉列表中选择“TeacherFile”“TeacherFile”表,表,在下方的字段列表中在下方的字段列表中选择“ID”“ID”字段。字段。“外外键表表”已已经默默认为打开的打开的“UserFile”“UserFile”表,所以只需要表,所以只需要设定下方的字段定下方的字段为“ID”“ID”字段,如字段,如图8-248-24所示

25、。所示。单击“确定确定”按按钮,完成,完成设置。置。8.2 PRIMARY KEY约束步步骤0404:关:关闭“外外键关系关系”对话框,在数据表框,在数据表编辑窗口中窗口中单击工具工具栏上的上的“保存保存”按按钮。打开基本表。打开基本表“UserFile”“UserFile”节点,点,展开展开“键”子子节点,可以看到新点,可以看到新创建的外建的外键约束,如束,如图8-258-25所示。所示。8.2 PRIMARY KEY约束2.通过命令方式创建外键约束步骤01:新建查询,在查询编辑器中输入如下语句。其中,FK_File_Users是外键约束的名称,用户可以自己命名。FOREIGN KEY(ID

26、)是指定要设置外键约束的字段。REFERENCES TeacherFile(ID)是设置的主键表和主键表字段,“TeacherFile”为主键表名称,“ID”为主键表中要关联的字段。ALTER TABLE UserFileADD CONSTRAINT FK_File_Users FOREIGN KEY(ID)REFERENCES TeacherFile(ID)步骤步骤0202:单击SSMS工具栏中的“执行”按钮完成外键约束的创建。8.2 PRIMARY KEY约束【相关知【相关知识识】1.外外键键在数据在数据库库中,常常不只有一个表,中,常常不只有一个表,这这些表之些表之间间也不是相互独立的,

27、而是需要建立一种关系,也不是相互独立的,而是需要建立一种关系,这样这样才能才能实现实现数据互通。如数据互通。如果某一果某一张张数据表中某个字段的数据表中某个字段的实质实质内容是另一内容是另一张张数据表中的主数据表中的主键键字段,字段,则这则这个字段就是个字段就是这张这张数据表的外数据表的外键键字段。外字段。外键约键约束主要用来束主要用来维护维护两个表之两个表之间间数据的一致性。数据的一致性。2.主主键键表与外表与外键键表表(1)主)主键键表:在两个相关表:在两个相关联联的数据表中,主的数据表中,主键键字段所在的表称字段所在的表称为为主主键键表。表。(2)外)外键键表:在两个相关表:在两个相关联

28、联的数据表中,外的数据表中,外键键字段所在的表称字段所在的表称为为外外键键表。表。3.建立外建立外键应键应遵循的原遵循的原则则(1)为为关关联联字段字段创创建外建外键键。(2)所有的主)所有的主键键都必都必须须唯一。唯一。(3)避免使用复合)避免使用复合键键。(4)外)外键总键总是关是关联联唯一的唯一的键键字段。字段。8.2 PRIMARY KEY约束4.4.操作操作实例例【例【例8-38-3】本操作】本操作实例例实现在两个表之在两个表之间创建外建外键关系。分关系。分别通通过界面方式和命令方式完成。首先界面方式和命令方式完成。首先执行下列行下列语句,句,创建两个建两个基本表,搭建基本表,搭建实

29、例所需的数据例所需的数据库环境。境。执行下列行下列语句,在数据句,在数据库中中创建建实例表例表TypeType和和BookBook,如,如图8-268-26所示。所示。CREATE TABLE Type(ID int PRIMARY KEY,TypeName char(8)GOCREATE TABLE Book(ID int PRIMARY KEY,BookType int,BookName varchar(20)GO8.2 PRIMARY KEY约束4.4.操作操作实例例【例【例8-38-3】本操作】本操作实例例实现在两个表之在两个表之间创建外建外键关系。分关系。分别通通过界面方式和命令方式

30、完成。首先界面方式和命令方式完成。首先执行下列行下列语句,句,创建两个建两个基本表,搭建基本表,搭建实例所需的数据例所需的数据库环境。境。执行下列行下列语句,在数据句,在数据库中中创建建实例表例表TypeType和和BookBook,如,如图8-268-26所示。所示。8.2 PRIMARY KEY约束下面根据要求将Book表中的“Booktype”字段与Type表中的“ID”字段建立关联。(1)通过界面方式创建外键关系。步骤01:打开SSMS,依次展开“Student”“表”“Book”节点,右击“键”子节点,在弹出的快捷菜单中选择新建外键”,打开“外键关系”对话框,如图8-27所示。8.2

31、 PRIMARY KEY约束步步骤03:单击左下方的“添加”按钮,一个名为“IX_News”的键被添加进来,如图4-24所示。名称的前缀为IX是因为SQL Server使用了一种规范命名系统。在“常规”分类的“列”栏中单击“打开”按钮,弹出“索引列”对话框,在“列名”栏选择“Name”字段,“排序顺序”默认为升序,如图4-25所示,单击“确定”按钮返回“索引/键”对话框。8.2 PRIMARY KEY约束步骤02:在“外键关系”对话框的“常规”栏中单击“表和列规范”文本框右侧的“打开”按钮,打开“表和列”对话框,如图8-28所示。8.2 PRIMARY KEY约束步骤03:设置主键表、外键表及

32、对应字段。在“主键表”的下拉列表中选择“Type”数据表,在下方的字段列表中选择“ID”字段。在“外键表”的下拉列表中选择“BookType”字段,如图8-29所示。8.2 PRIMARY KEY约束步骤04:依次关闭“表和列”及“外键关系”对话框,保存基本表设置。(2)通过命令方式创建外键关系。在查询编辑器中输入如下语句完成外键关系的创建。ALTER TABLE BookADD CONSTRAINT FK_File_Type FOREIGN KEY(BookType)REFERENCES Type(ID)任务8.4 其他约束8.4 其他约束【任务描述】在数据库中,为了保证数据的完整性,除了可

33、以创建主键约束和外键约束以外,还可以创建默认约束(DEFAULT)、检查约束(CHECK)、非空约束(NOT NULL)和唯一约束(UNIQUE)。【任务分析】本任务将介绍默认约束、检查约束、非空约束和唯一约束。这些约束都可用于限定数据表中字段的数值,以实现数据完整性,防止因限定条件不正确或者没有限定条件而导致的数据错误。完成该任务需要了解这几种约束可实现怎样的功能,掌握创建这几种约束的方法,明确这几种约束的使用前提。8.4 其他约束【任务实现】1.默认约束(DEFAULT)步骤01:启动SSMS,在目标数据库“student”中右击“TeacherFile”表节点,在弹出的快捷菜单中选择“设

34、计”,打开数据表结构编辑窗口,增加两个字段“姓名”和“民族”,如图8-30所示。8.4 其他约束步骤02:选择“民族”字段,在窗口下方“列属性”窗格的“常规”栏中找到“默认值或绑定”项,在对应的文本框中输入“汉族”,如图8-31所示。这样就为TeacherFile数据表中的“民族”字段设置了默认值“汉族”。8.4 其他约束同样,可以使用SP_HELPINDEX语句查看结果,结果如图4-32所示。USE student -打开student数据库GOSP_HELPINDEX stu_table8.4 其他约束步步骤骤03:通:通过过命令方式命令方式创创建表的同建表的同时创时创建默建默认值认值。在

35、。在创创建表的同建表的同时时,可以直接在某个字段的后面注明默,可以直接在某个字段的后面注明默认值认值。例如,。例如,为为NewFile数据表中的数据表中的“Nation”字段字段设设置默置默认值认值“汉汉族族”的的语语句如下:句如下:CREATE TABLE NewFile(ID int,Nationnvarchar(50)DEFAULT汉族)步骤步骤0404:为已创建好的数据表中某个未设置默认值的字段设置默认值。需要使用修改表语句。例如,为NewFile数据表中的“Nation”字段设置默认值为“汉族”的语句如下:ALTER TABLE NewFileADDCONSTRAINTDafult_

36、NTDEFAULT汉族FORNation8.4 其他约束2.非空约束(Not Null)步骤01:在SSMS中,右击目标表的“UserFile”节点,在弹出的快捷菜单中选择“设计”,打开UserFile数据表结构编辑窗口,增加“用户名”“密码”“权限”字段,如图8-32所示。8.4 其他约束步骤02:每个字段后边均有一个“允许Null值”复选框,可以设置每个字段是否允许空值。如果某个字段的该选项处于选中状态,则表明此字段值可以为空;如果没有选中,则表明此字段不可以为空。设置UserFile表的“密码”“权限”字段值不允许为空;“Age”“用户名”字段值可以为空,如图8-33所示。8.4 其他约

37、束步骤03:通过命令方式创建数据表管理字段。创建表的同时,可以直接设置某个字段的非空性。例如,在创建Users表时,指定“UserID”“UserName”字段值不允许为空,“Password”“Role”字段值可以为空的语句如下:USE StudentCREATE TABLE Users(UserID int not null,UserName varchar(50)not null,Password varchar(50)null,Role int null)8.4 其他约束步骤04:使用语句修改已存在数据表中字段的非空性。例如,将Users数据表中的“UserName”字段修改为允许为空

38、的语句如下:ALTER TABLE UsersALTER COLUMN UserName varchar(50)Null3.3.唯一约束唯一约束(Unique)(Unique)唯一约束通常只通过命令方式完成。步骤步骤0101:在创建数据表时,指定某一字段是唯一的。例如,将Users表中的“UserName”字段设置为唯一字段的语句如下:USE StudentCREATE TABLE Users(UserID int not null,UserName varchar(50)not null unique,Password varchar(50)null,Role int null8.4 其他约

39、束步骤02:将已存在数据表中的某一字段指定为唯一字段。例如,将Users表中的“Password”字段指定为唯一字段的语句如下:ALTER TABLE UsersADD CONSTRAINT Unique_Password UNIQUE(Password)8.4 其他约束【相关知识】1.DEFAULT约束、NOT NULL约束、UNIQUE约束(1)DEFAULT约束:即默认约束,是指为数据表中的某些字段设置默认值。如果在向数据表中插入一行数据时,没有指定该字段的具体数值,则系统将设置的默认值自动插入该字段。(2)NOT NULL约束:即非空约束,是指在数据表中指定某些字段不可以为空值。向数据

40、表中插入数据时,如果未向含有NOT NULL约束的字段中插入数据,则SQL Server会提示错误信息。(3)UNIQUE约束:即唯一约束,是指在数据表中某些字段的值不可以重复。主键约束与唯一约束的区别如下:(1)唯一约束可以确保在非主键列中不输入重复的值。(2)在一个数据表中可以定义多个唯一约束,但只能定义一个主键约束。(3)唯一约束可以允许其字段值为NULL,但主键约束不可以为NULL。(4)外键约束可以引用唯一约束。8.4 其他约束2.操作操作实实例例【例【例8-4】本操作】本操作实实例例实现实现数据数据库库中其他中其他约约束的束的设设置,目的是完成置,目的是完成对对数据数据库库完整性完

41、整性约约束的束的补补充。具体需要完成以下任充。具体需要完成以下任务务:为为Student_table表中的表中的“Sex”字段字段创创建默建默认值认值“男男”;为为Student_table表中的表中的“Sex”字段字段设设置非空置非空约约束;束;为为Student_table表中的表中的“Student_id”字段字段设设置唯一性置唯一性约约束。束。(1)设置默认值。步骤步骤0101:启动SSMS,右击“Student_table”数据表节点,在弹出的快捷菜单中选择“设计”,打开Student_table数据表结构编辑窗口。步骤步骤0202:选择“Sex”字段,在窗口下方的“列属性”的“常规

42、”栏中找到“默认值或绑定”项,在对应的文本框中输入“男”,如图8-34所示。8.4 其他约束图8-348-34为“Sex”“Sex”字段字段设置默置默认值(2 2)设置非空置非空约束。束。步步骤0101:启:启动SSMSSSMS,右,右击“Student_table”“Student_table”数据表数据表节点,在点,在弹出的快捷菜出的快捷菜单中中选择“设计”,打开,打开Student_tableStudent_table数据表数据表编辑窗口。窗口。步步骤0202:根据任:根据任务要求,取消勾要求,取消勾选“Sex”“Sex”字段字段对应的的“允允许NullNull值”,即,即设置置为不允不允许为空,如空,如图8-358-35所示。所示。(3)设置唯一性约束。根据任务要求,在查询编辑器中输入如下语句,完成对“Student_id”字段的唯一性约束设置。ALTER TABLE Student_tableADD CONSTRAINT Unique_Studentid UNIQUE(Student_id)

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

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

本站为文档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