T-SQL实验:主键、唯一键与级联引用的实战应用
本实验主要涉及数据库理论和实践操作,通过T-SQL语句来处理SQL Server数据库中的表结构和约束管理。以下是四个关键任务的详细解析: 1. 创建和删除主键:在这个任务中,你需要使用T-SQL创建一个复合主键,例如在表pay中,将No、Year和Month这三个字段组合起来作为主键。这确保了每个记录的唯一性,不允许有重复的No、Year和Month组合。 2. 创建和删除唯一约束:在dept表中,你需删除部门名称列上的唯一约束,这意味着部门名称不再强制要求唯一,可能允许有重复的部门名称存在。 3. 强制表间引用完整性测试:通过尝试修改主表dept中的部门代号(如将'00101'改为'00108'),并观察其对从表person的影响。由于有FOREIGN KEY约束(如FK__person__DeptNo__2B0A656D)关联,这种修改会被阻止,因为这将破坏数据的参照完整性,导致从表person中的相应记录无法正确关联。 4. 修改从表与参照完整性冲突:尝试在从表pay中修改工号'000002'为'000020',同样会因FOREIGN KEY约束(fk_no)冲突而失败,因为这违反了数据的参照完整性,即从表的No必须来源于主表person。 5. 设置级联引用:实验的最后阶段,你设置了级联更新规则,当dept中的部门代号改变时,级联地更新与之相关的person表中的部门代号。然而,这个过程同样因为引用约束(如FK__person__DeptNo__38996AB5)而受阻,验证结果显示,修改成功并影响了从表。 思考题部分强调了数据完整性的重要性,指出在主表和从表的增删改操作中,违反以下规则会导致完整性约束破坏: - 插入不存在的数据,如在课程表中插入不存在的课程号,破坏参照完整性。 - 插入重复数据,如课程表中的课程号已存在,违反实体完整性。 - 删除数据时,从表的参照数据丢失,破坏参照完整性。 - 修改数据时,如性别字段限制,修改为非预期值,破坏用户定义完整性。 在遇到约束冲突时,应遵循数据库设计原则,遵循约束给出的合理操作提示,以保持数据的准确性和一致性,而不是简单地删除约束。通过这些实践操作,学生可以深入理解数据库约束如何保护数据的完整性和正确关联。
![](https://csdnimg.cn/release/download_crawler_static/86727758/bg1.jpg)
下载后可阅读完整内容,剩余6页未读,立即下载
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://profile-avatar.csdnimg.cn/083f17e623794c809dee879d2997cfcf_qq_47381886.jpg!1)
- 粉丝: 6
- 资源: 42
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助
![](https://csdnimg.cn/release/wenkucmsfe/public/img/voice.245cc511.png)
最新资源
- 解决Eclipse配置与导入Java工程常见问题
- 真空发生器:工作原理与抽吸性能分析
- 爱立信RBS6201开站流程详解
- 电脑开机声音解析:故障诊断指南
- JAVA实现贪吃蛇游戏
- 模糊神经网络实现与自学习能力探索
- PID型模糊神经网络控制器设计与学习算法
- 模糊神经网络在自适应PID控制器中的应用
- C++实现的学生成绩管理系统设计
- 802.1D STP 实现与优化:二层交换机中的生成树协议
- 解决Windows无法完成SD卡格式化的九种方法
- 软件测试方法:Beta与Alpha测试详解
- 软件测试周期详解:从需求分析到维护测试
- CMMI模型详解:软件企业能力提升的关键
- 移动Web开发框架选择:jQueryMobile、jQTouch、SenchaTouch对比
- Java程序设计试题与复习指南
![](https://img-home.csdnimg.cn/images/20220527035711.png)
![](https://img-home.csdnimg.cn/images/20220527035111.png)
![](https://csdnimg.cn/release/wenkucmsfe/public/img/green-success.6a4acb44.png)