SQL server 实验6.2 完整性
书目:SQL sever 实用教程(第五版)(SQL server 2008版)
本实验使用数据表为实验3中创建的employees、departments、salary表
(1)创建一个表Employees5,只包含EmployeeID、Name、Sex和Education列。将Name设为主键,作为列Name的约束。对EmployeeID列进行unique约束,并作为表的约束。
(2)删除上例中的unique约束
- 使用T-SQL命令创建一个新表,使用一个复合列作为主键,作为表的约束并为其命名
- 使用alter table语句为表Employees5添加一个新列Address,并为该列定义unique约束
- 使用界面方式为一个新表定义主键和unique约束,并了解如何使用图形导向方式删除主键和unique约束
(3)创建新表student,只考虑“号码”和“性别”两列,性别只包含男或女
- 向该表插入数据,“性别”列插入“男”和“女”以外的字符,查看会发生什么情况
(4)创建新表Salary2,结构与Salary相同,但Salary2表不允许Outcome列大于Income列。
- 向表中插入数据,查看outcome值比income值大时会发生什么情况
- 创建一个Employees6,只考虑“学号”和“出生日期”两列,出生日期必须晚于1980年1月1日
(5)对YGGL数据库中的Employees表进行修改,为其增加“DepartmentID”字段的check约束
- 测试check约束的有效性
Check约束通过逻辑表达式来判断数据的有效性,用来限制输入一列或多列的值的范围,在列中更新数据时,所要输入的内容必须满足Check约束的条件,否则将无法正确输入。
(6)创建一个规则对象,用以限制输入到该规定所绑定的列中的值只能是该规则中列出的值
- 建立一个规则对象,限制值在0至20之间。然后把它绑定到Employees表的WorkYear字段上
- 删除上述建立的规则对象
(7)创建一个Salary3表,要求所有Salary3表上的EmployeeID列的值都要出现在Salary表中,利用参照完整性约束实现。要求当删除或修改Salary表上的EmployeeID列时,Salary3表中的EmployeeID值也会随之变化
- 在“对象资源管理器”中建立Departments、Employees和Salary三个表之间的参照关系
完成后单击“保存”按钮,在弹出“选择名称”对话框中输入关系图的名称。单击“确定”按钮,在弹出的“保存”对话框中单击“是”按钮,保存设置。
袁既望: 非常感谢纠正!已修改!
壹之形: 选择排序写错了
BIG TASTY: id_rsa.pub
普通网友: 好文!我也写了一篇获取【大厂面试真题解析、核心开发学习笔记、最新全套讲解视频、实战项目源码讲义、学习路线简历模板】的文章
普通网友: 写的真好!我也写了一篇获取【大厂面试真题解析、核心开发学习笔记、最新全套讲解视频、实战项目源码讲义、学习路线简历模板】的文章