一、实验目的

掌握触发器概念和应用,熟悉触发器的设计与实现。触发器是一种特殊类型的存储过程,自动响应数据库中插入、删除、更新等事件,以确保数据的一致性和完整性。

二、实验内容

实验名称:触发器应用

实验任务:

1. 创建存储过程ProcNum

* 使用SQL Server Management Studio创建ProcNum,查询每个班级中学生人数,按班级号升序排序。

* 代码:

sql

create proc ProcNum as

select 班级号, count(*) as 班级人数 from 学生表 group by 班级号 order by 班级号 asc

* 运行截图:

  1. 创建存储过程ProcInsert
  2. 使用Transact-SQL语句创建带参数的存储过程ProcInsert,插入选课记录,并查询学生姓名及课程信息。
  3. 代码:
    sql create proc ProcInsert @xm nvarchar(50), @kcmc nvarchar(50), @pscj float, @qmcj float as begin ... end
  4. 运行截图:

  5. 创建存储过程ProcAvg

  6. 查询指定性别指定课程的平均分。
  7. 代码:
    sql create proc ProcAvg @bjh char(2), @kcmc varchar(50), @pjf numeric(5,2) output as begin ... end
  8. 运行截图:

  9. 创建触发器trigSg和trigforeign

  10. 创建AFTER触发器trigSg,插入或修改student表中身高时,检查数据范围与入校成绩。
  11. 代码:
    sql create trigger trigSg on 学生表 after insert, update as begin ... end
  12. 运行截图: