SQL Server数据库项目8教学ppt课件.pptx
《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约约束,又称外束,又称外键约键约束。通俗地束。通俗地说说,外,外键约键约束就是束就是实现实现表与表之表与表之间间关关联联的的约约束,通束,通过这过
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- SQL Server数据库项目8教学ppt课件 Server 数据库 项目 教学 ppt 课件
限制150内