数据库建立触发器
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
江西理工大学应用科学学院
数据库技术及应用实验报告
实验名称SQL数据库存储过程及触发器的创建
日期2012、4、2 专业班级电子商务091班
实验人阳东学号40号
实验要求:
1、用T-SQL语言创建名为查看课程成绩的存储过程:
输入任一课程名,则显示课程、编号、名称、教师编号、学生的学号以及
对应课程成绩。
2、用T-SQL语言创建触发器:
当对表插入数据时,性别只为男or女,否则弹出错误提示框。
实验目的:
学会使用T-SQL语言创建数据库存储过程以及触发器。
实验内容及步骤:
一、创建存储过程:
1、启动SQL Server企业管理器。
2、在“控制台根目录”窗口左边窗格中,展开“SQL Server组”→“数据库”
结点,然后建立“英才大学信息管理系统”数据库。
3、在数据库中建立相应的表“课程名、成绩表”,并在两个表中键入相应的
内容。
4、选择“朱虹美”数据库,然后点击工具中的“SQL查询分析器”菜单命令
,进入“查询分析器”窗口。
5、在“查询分析器”窗口,输入并执行如下命令:
CREATE PROC 查看课程成绩@课程名char(12)
AS SELECT 课程.课程编号,课程.课程名称,课程.教师编号,成绩.学号,成绩.成绩
FROM 课程INNER JOIN
成绩ON 课程.课程编号=成绩.课程编号
WHERE 课程.课程名称=@课程名
结果如图所示:
然后再次进入“查询分析器”窗口,执行存储过程,有三种方法: 1)EXEC 查看课程成绩@课程名='软件工程'
2)EXEC 查看课程成绩数据库原理
3) Declare @X char(12)
EXEC @X=查看课程成绩'程序设计'
二、创建触发器。
1、启动SQL Server企业管理器。
2、在“控制台根目录”窗口左边窗格中,展开“SQL Server组”→“数据库”
结点,点击“英才大学信息管理系统”数据库。
3、在数据库中建立相应的表“学生”,并在表中键入相应的内容。
4、选择“英才大学信息管理系统”数据库,然后点击工具中的“SQL查询分析器”
菜单命令进入“查询分析器”窗口。
5、在“查询分析器”窗口,输入并执行如下命令:
CREATE TRIGGER Trigger_学生_性别ON 学生
FOR INSERT
AS
IF EXISTS(SELECT*FROM 学生WHERE 性别NOT IN('男','女'))
BEGIN RAISERROR('请输入合法的姓名!',16,1)
ROLLBACK TRANSACTION
END
建立触发器完毕。
然后在表中添加不符合规格的数据,则显示错误提示框: