• 数据库上机实验6 数据库完整性


    一、实验目的

    1、熟练掌握实体完整性、参照完整性的定义。

    2、掌握用户定义完整性的定义。

    3、了解触发器的定义和使用。

    二、实验内容

    使用SQL命令完成如下题目:

    1、删除学生作业表的主键约束和外键约束。

    1. alter table score
    2. drop constraint PK__score__8497E91307705DC5,
    3. FK__score__cno__15502E78,FK__score__Sno__164452B1

    2、在学生作业表中添加学号和课程号的主键约束。

    1. alter table score
    2. add constraint
    3. pk_sno_cno primary key(sno,cno)

    3、在学生作业表中添加课程号的外键约束。

    1. alter table score
    2. add constraint
    3. fk_score_cno foreign key(cno) references course(cno)

    4、创建触发器tr1,实现当修改学生表中的数据时,显示提示信息“学生表信息被修改了。” 

    1. 创建触发器语句:
    2. create trigger tr1 on student after update
    3. as
    4. print '学生表信息被修改了。'
    5. 执行触发器语句:
    6. select * from student where sno='0433'
    7. update student set sname='张艳艳' where sno='0433'
    8. select * from student where sno='0433'

    5、使用触发器tr2,实现当修改学生表中某个学生的学号时,对应学生作业表中的学号也要修改。

    1. 创建触发器语句:
    2. create trigger tr2 on student after update
    3. as
    4. update score set sno=(select sno from inserted)
    5. where sno=(select sno from deleted)
    6. 执行触发器语句:
    7. select * from student where sname='张艳艳'
    8. select * from score where sname='张艳艳'
    9. update student set sno='0434' where sname='张艳艳'
    10. select * from student where sname='张艳艳'
    11. select * from score where sname='张艳艳'

    6、查看学生表中已创建的触发器。

    exec sp_helptrigger 'student'
    

    7、查看已创建的触发器tr1的内容。

    exec sp_helptext 'tr1'
    

    8、删除学生表上的触发器tr1。

    drop trigger tr1
    

    三、实验指导

    1、启动SQL Server2012软件。

    2、通过分离附加的方法,将实验1所创建的作业管理数据库恢复到该软件中。

    3、SQL Server中,程序不区别大小写,特别要注意程序中的标点符号,一定要在英文半角状态下输入,否则会出错。

    4、使用ALTER TABLE命令来创建和删除主键约束和外键约束,如果在创建的过程中,出现已经存在该约束的错误,就需要先删除再创建。

    5、若在创建约束的时候没有给约束指定名字,系统会自动给约束分配名字。

    6、触发器的触发事件有INSERT、UPDATE和DELETE。

    7、创建触发器后,要使用相应语句来触发该触发器执行。

  • 相关阅读:
    动手学习深度学习 09:循环神经网络
    动手学深度学习d2l.Animator无法在PyCharm中显示动态图片的解决方案
    web端生成pdf,前端生成pdf导出并自定义页眉页脚
    啃完这些 Spring 知识点,我竟吊打了阿里面试官(附面经 + 笔记)
    一篇文章带你掌握主流办公框架——SpringBoot
    OPENSQL 2022.9.1
    标准化研究院云迁移相关能力要求发布,万博智云参与能力要求和白皮书编写
    Power BI 傻瓜入门 3. 选择Power BI的版本
    vue使用localstorage超出限制解决方法
    arm_按键中断控制LED、蜂鸣器、风扇
  • 原文地址:https://blog.csdn.net/qq_64314976/article/details/126042117