《实验7存储过程.doc》由会员分享,可在线阅读,更多相关《实验7存储过程.doc(9页珍藏版)》请在三一办公上搜索。
1、实验7 存储过程一、实验目的与要求 1.掌握交互式创建存储过程的方法。2.掌握用T-SQL创建存储过程的方法。3.掌握执行存储过程的方法。4.掌握修改存储过程的方法,而且不改变权限。5.掌握交互式删除存储过程的操作。6.掌握用SQL删除存储过程的方法。二、实验内容1.交互式创建并执行存储过程Pro_Qsinf:通过学生的学号来查询该学生的某某、年龄和所在系。默认学号是200215121。2.用T-SQL创建并执行存储过程Pro_Qgrade:通过学生的某某和课程名来查询该学生该课程的成绩。3.交互式修改存储过程Pro_Qsinf。4.用SQL修改存储过程Pro_Qsinf。5.交互式删除存储过
2、程Pro_Qsinf。6.用SQL删除存储过程Pro_Qgrade。三、实验步骤1. 交互式创建并执行一存储过程(1) 创建存储过程Pro_Qsinf:通过学生的学号来查询该学生的某某、年龄和所在系。 打开创建存储过程窗口。在“对象资源管理器中,依次展开“数据库-“学生-课程-“可编程性-“存储过程节点,右击“存储过程,选择“新建存储过程命令,如图1所示。打开存储过程编辑窗口,并包含模板语句,如图2所示。 修改模板语句。将模板语句修改为图3所示的SQL语句。 语法检查。单击工具栏中的分析按钮,在“结果窗口中显示“命令已成功完成。 保存存储过程。单击工具栏中的执行按钮,保存创建的存储过程。 查看
3、数据库学生-课程中的存储过程对象。在对象资源管理器中,右击数据库学生-课程中的“存储过程节点,选择“刷新命令,展开“存储过程节点,查看新建的存储过程Pro_Qsinf,如图4所示。图1 选择“新建存储过程命令图2 存储过程编辑窗口图3 创建存储过程Pro_Qsinf图4 数据库学生-课程中的存储过程(2) 执行存储过程Pro_Qsinf。查询并显示默认学号200215121和学号为200215122的学生某某、年龄和所在系。 新建查询,打开查询编辑器窗口。 输入如下SQL语句,查询并显示默认学号200215121和学号为200215122的学生某某、年龄和所在系,如图5所示。 执行SQL语句,
4、结果如图5所示。图5 执行存储过程查询学生的信息1创建存储过程Pro_Qgrade:通过学生的某某和课程名来查询该学生该课程的成绩。 新建查询,打开查询编辑器窗口。 输入并执行如下SQL语句,如图6所示。图6用T-SQL创建存储过程查看数据库学生-课程中的存储过程对象。在对象资源管理器中,右击数据库学生-课程中的“存储过程节点,选择“刷新命令,展开“存储过程节点,查看新建的存储过程Pro_Qgrade。(3) 执行存储过程Pro_Qgrade:查询并显示“X晨的“数学课程的成绩。 新建查询,打开查询编辑器窗口。 输入并执行如下SQL语句,查询并显示“X晨的“数学课程的成绩,如图7所示。图7 执
5、行存储过程查询X晨的数学成绩1打开存储过程Pro_Qsinf的编辑窗口。在“对象资源管理器中,依次展开“数据库-“学生-课程-“可编程性-“存储过程节点,右击存储过程Pro_Qsinf,在弹出的快捷菜单中选择“修改命令,打开编辑窗口。2按要求修改定义。把输入变量sno_in的长度改为10;把输出变量sage_out的类型改为tinyint,如图8所示。3语法检查。单击“分析按钮,检查语法是否正确。4保存修改。单击“执行按钮,保存对存储过程的修改。(1) 新建查询,打开查询编辑器窗口。2输入并执行如下SQL语句,将存储过程Pro_Qsinf的定义修改为根据学号查询某某、性别和所在系。设置默认学号
6、为200215125,如图9所示。3检查存储过程对象的内容。在“对象资源管理器中,依次展开“数据库-“学生-课程-“可编程性-“存储过程节点,右击存储过程Pro_Qsinf,在弹出的快捷菜单中选择“刷新命令。再展开dbo.Pro_Qsinf-“参数节点,查看定义的变化,如图10所示。图8 交互式修改存储过程Pro_Qsinf图9 用T-SQL修改存储过程Pro_Qsinf图10 存储过程Pro_Qsinf中的对象1选择要删除的存储过程。在“对象资源管理器中,依次展开“数据库-“学生-课程-“可编程性-“存储过程节点,选择存储过程Pro_Qsinf。2删除存储过程。右击存储过程Pro_Qsinf,在弹出的快捷菜单中选择“删除命令,如图11所示。弹出“删除对象对话框,单击“确定按钮,存储过程Pro_Qsinf即被删除。图11 选择删除存储过程命令6.用SQL删除存储过程Pro_Qgrade(1) 新建查询,打开查询编辑器窗口。(2) 输入并执行如下SQL语句,删除存储过程Pro_Qgrade,如图12所示。(3) 刷新后查看学生-课程数据库中的存储过程,看Pro_Qgrade是否已经被删 除。图12 用SQL删除存储过程Pro_Qgrade