任务4 数据库完整性管理
数据完整性是指存储在数据库中的数据的正确性和相容性,以防止不符合语义的数据进入数据库。
SQL Server实施完整性的途径主要有:
约束(Constraint)
标识列(Identity Column)
默认值(Default)
规则(Rule)
触发器(Trigger)
数据类型(Data Type)
索引(Index)
存储过程(Stored Procedure)
子任务 约束(constraint)
定义:在创建表时定义,与表共存亡
用途:限制用户输入到表中的数据的值的范围
分类:列级约束、表级约束
查看:sp_helpconstraint 表名
种类:Primary Key,Foreign Key,Unique,Check
删除:alter table 表名 drop constraint 约束名
子任务 规则(rule)
规则:单独存储的数据对象,对列的值进行规定和限制。
当用户向绑定有规则的数据列中insert和update数据时,规则会检查修改值的完整性
步骤:先创建规则,再将规则与某个列绑定,不再使用时删除它
使用Transact SQL创建和删除规则:
1、创建create rule 规则名 as 条件表达式
2、删除drop 规则名
使用Transact SQL绑定规则
sp_bindrule 规则名,’表名.列名’
使用Transact SQL解除绑定规则
sp_unbindrule ‘表名.列名’
使用企业管理器管理规则
子任务 默认(default)
(1)使用Transact SQL创建默认
create default 默认名 as 默认值
(2)使用Transact SQL绑定默认
sp_bindefault 默认名,’表名.列名’
(3)使用Transact SQL解除绑定默认
sp_unbindefault ‘表名.列名’
(4)使用Transact SQL删除默认
drop 默认名
(5)使用SSMS管理默认
一、简答题
1、SQL Server的身份验证方式分别是哪两种?
2、简述SQL Server的安全验证过程。
二、上机实践题
上机调试示例并适当按自己需求改进。
(参考书上题目)
实训练习
1.新建一个以你名字首字母缩写来命名的SQL Server登录账号。
2.为上题的登录在Library数据库中创建一个同名用户。
3.给上题的用户授予查询和更新StudentInfo表的权限。
4.撤销上题用户更新StudentInfo表的权限。
5.删除上题创建的用户和登录账号。
参考资料
电子作业本