实验三 SQL Server的视图、存储过程和触发器
一、实验目的
本实验主要了解SQL Server视图、存储过程和触发器的基本概念和使用方法。通过本实验,读者将学会在企业管理器中创建、修改、执行和删除存储过程的操作以及在查询分析器中执行的T-SQL语句;掌握触发器的创建、修改和删除的操作方法和T-SQL语句。掌握视图的创建、修改和删除的操作方法和T-SQL语句。 二、实验环境
? Microsoft SQL Server 2008 SSMS ? Book数据库 三、实验内容
1. 创建存储过程proc_book11和proc_book12,查询指定学院的教师预订教材的情况。要求显示教材名称(T_ame)、教师姓名(T_erName)和教材数量(T_okNum+T_okNum)。 (1) proc_book11的查询条件为:学院代码
(2) proc_book12的查询条件为:学院名称
2. 创建存储过程proc_book2,查询指定教材的预订数量。
3. 创建添加教材信息的存储过程proc_book3。
4. 创建触发器tri_book1,在对T_Teacher表进行插入、修改和删除记录时,都会自动显示表中的内容。
5. 创建触发器tri_book2,当修改T_Teacher表中的TeacherCode字段值时,该字段在T_BookOrder表中的对应值也作修改。
6. 创建触发器tri_book3,检查插入在T_BookInfo表中的教材库存(StockNum)是否大于等于0。
7. 创建视图view_book1,使其包含预订数量最高的20%的教材信息。要求显示教材代号(BookCode)、教材名称(BookName)、ISBN号(ISBNCode)和出版社名称(Publisher)。
8. 创建视图view_book2,查询预订了教材名中含有“程序”一词的教师姓名(TeacherName)和所在学院名称(AcadName)。
9. 创建视图view_book3,使其包含“学院名称(AcadName)”、“教师姓名(TeacherName)”、“预订书名(BookName)”、“是否领走(TakeAway)”。
四、实验报告要求
1. 给出实现每个小题功能的SQL语句。请注意SQL语句也应有合适的缩进,对复杂的语句应加上注释,说明语句段的功能。
2. 对存储过程和视图给出执行语句以及执行结果(屏幕截图)。对触发器,请给出可以触发相应事件的语句,并给出触发结果(屏幕截图)。
3. 如果执行时出错,给出出错的结果(屏幕截图),分析出错的原因及改正方法。 4. 实验总结及心得体会。
实验三SQLServer的视图、存储过程和触发器



