- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验五 存储过程和触发器的使用
【目的要求】
1、了解存储过程的基本概念和类型。
2、了解创建存储过程的T-SQL语句的基本语法。
3、了解查看、执行、修改和删除存储过程的T-SQL命令的用法。
4、了解触发器的基本概念和类型。
5、了解创建触发器的T-SQL语句的基本语法。
6、了解查看、修改和删除存储过程的T-SQL命令的用法。
【实验内容】
内容一:存储过程的使用
一、数据需求分析
存储过程是一种数据库对象,为了实现某个特定任务,将一组预编译的SQL语句以一个存储单元的形式存储在服务器上,供用户调用,自动完成需要预先执行的任务。存储过程在第一次执行时进行编译,然后将编译好的代码保存在高速缓存中便于以后调用,提高了代码的执行效率。
二、内容要点分析
1、SQL SERVER支持五种类型的存储过程:系统存储过程、本地存储过程、临时存储过程、远程存储过程和扩展存储过程。其中,系统存储过程是由系统提供的存储过程,可以作为命令执行各种操作。系统存储过程定义在系统数据库master中,其前缀是sp_。本地存储过程是指在用户数据库中创建的存储过程,这种存储过程完成特定数据库操作任务,不能以sp_为前缀。
2、只能在当前数据库中创建存储过程。
3、创建存储过程时,应指定所有输入参数和向调用过程或批处理返回的输出参数、执行数据库操作的编程语句和返回至调用过程或批处理以表明成功或失败的状态值。
4、创建存储过程的T-SQL语句
CREATE PROC[EDURE] 存储过程名称
[{ @参数名称 数据类型 }] [,…n]
[WITH
{ RECOMPILE|ENCRYPTION }]
AS
SQL语句序列
说明:
(1) RECOMPILE表明每次运行该过程时,将其重新编译。
(2) ENCRYPTION表示 SQL SERVER 加密SYSCOMMENTS表中包含 CREATE PROCEDURE语句文本的条目。
注:必须将CREATE PROCEDURE语句放在单个批处理中。
成功执行CREATE PROCEDURE语句后,存储过程存储在sysobjects系统表中。
5、执行存储过程
? EXEC[UTE] @返回值=存储过程名称 参数值
6、查看存储过程
? 查看存储过程的文本信息:SP_HELPTEXT 存储过程名
? 查看存储过程的一般信息:SP_HELP 存储过程名
? 查看存储过程的相关信息:SP_DEPENDS 存储过程名
7、编辑修改存储过程
? ALTER PROCEDURE 存储过程名称
[{ @参数名称 数据类型 }][,…n]
[WITH
{ RECOMPILE|ENCRYPTION }]
AS
SQL语句序列
说明:各参数含义与CREATE PROCEDURE命令相同。
8、删除存储过程
? DROP PROCEDURE 存储过程名称[,…N]
三、实验内容
1、使用“学生信息”数据库中的“学生”表、“课程注册”表和“学期成绩”表,创建一个存储过程xsxx_proc。查询学生的姓名、课程名称和成绩。
方法一:使用企业管理器
(1) 打开企业管理器。
(2) 依次展开控制台根目录。
(3) 双击“学生信息”数据库节点,在其右边明细窗格中右键单击“存储过程”图标。
(4) 在弹出的快捷菜单中选择“新建存储过程”命令。
图5—1 选择“新建存储过程”命令
(5)执行“新建存储过程”命令,打开“存储过程属性”对话框,如图5—2所示。
图5—2 “存储过程属性”对话框
(6)在其文本框中首先输入所有者和存储过程名称,例如用所有者DBO替换OWNER,用过程名XSXX_PROC替换PROCEDURE NAME。
(7)在文本框的第二行输入存储过程文本,根据题意输入如下语句:
IF EXISTS(SELECT NAME FROM SYSOBJECTS
WHERE NAME=xsxx_proc AND TYPE=p)
DROP PROCEDURE XSXX_PROC
GO
SELECT 姓名,课程名称,成绩
FROM 学生,学期成绩,课程注册
WHERE 学生.学号=学期成绩.学号
AND 学期成绩.课程编号=课程注册.课程编号
GO
(8)输入完成后,如图5—3所示。
图5—3 “存储过程属性”
(9)进行语法检查。
(10)如果没有错误,单击“确定”按钮,将存储过程保存到数据库中。
注:自行完成以下各例使用企业管理器的方法。
方法二:使用查询分析器
步骤:
(1) 打开查询分析器。
(2) 在查询子窗口中输入如下程序代码。
USE 学生信息
GO
IF EXISTS
文档评论(0)