- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第5章 数据库对象操作 - 山东师范大学
存储过程与触发器;存储过程; 存储过程的概念;创建存储过程 ;创建存储过程时,需要确定存储过程的三个组成部分:;1. 使用创建存储过程向导创建存储过程 ;欢迎使用创建存储过程向导对话框;选择数据库对话框 ;选择数据库对象对话框;完成创建存储过程向导对话框;编辑存储过程属性对话框;编辑存储过程SQL对话框;2. 使用SQL Server 企业管理器创建存储过程 ;选择新建存储过程对话框(1);选择新建存储过程对话框(2);新建存储过程对话框;设置权限对话框;3. 使用Transact-SQL语句中的CREATE PROCEDURE命令创建存储过程;使用CREATE PROCEDURE创建存储过程的语法形式如下: ;用CREATE PROCEDURE创建存储过程的语法参数的意义如下: ;RECOMPILE:表明 SQL Server 不会保存该存储过程的执行计划 。
ENCRYPTION :表示 SQL Server 加密了 syscomments 表,该表的text字段是包含 CREATE PROCEDURE 语句的存储过程文本。
FOR REPLICATION:用于指定不能在订阅服务器上执行为复制创建的存储过程。
AS:用于指定该存储过程要执行的操作。
sql_statement:是存储过程中要包含的任意数目和类型的 Transact-SQL 语句。;例:创建存储过程;2.建立带参数的存储过程
Use studentcopy
go
If exists (select name from sysobjects
where name=p_sc and type=‘p’)
Drop procedure p_sc
Go
Create procedure p_sc @sno char(7),@cno char(10)
As
Select sname,cno,grade
From student join sc on student.sno=sc.sno
Where sc.sno=@sno and cno=@cno
go
带参数的execute语句
execute p_sc 参数;3.带输出参数的存储过程
use studentcopy
go
create procedure mathadd
@m1 int,
@m2 int,
@result int output
as
set @result=@m1+@m2
Go
调用带参数的存储过程
Use studentcopy
Go
Declare @answer int
Execute mathadd 8,10,@answer output
Select @answer;查看和修改存储过程 ;(1)使用企业管理器查看用户创建的存储过程 ;(2)使用系统存储过程来查看用户创建的存储过程 ;2. 修改存储过程;重命名和删除存储过程;2. 删除存储过程;触发器;触发器; 触发器主要优点如下:;创建触发器 ;
⑥ 创建一个触发器时必须指定:
⑴名称;
⑵在其上定义触发器的表;
⑶触发器将何时激发;
⑷激活触发器的数据修改语句???
;1. 使用企业管理器创建触发器;2. 使用CREATE TRIGGER命令创建触发器;[{IFUPDATE(column)????????????[{AND|OR}UPDATE(column)]????????????????[...n]????????|IF(COLUMNS_UPDATED(){bitwise_operator}updated_bitmask)????????????????{comparison_operator}column_bitmask[...n]????????}] ????????sql_statement[...n] ????} ?} ;例子: ;关于inserted表和deleted表;查看、修改和删除触发器;sp_help、sp_helptext和sp_depends具体用途和语法形式如下。;2. 修改触发器 ;(2)使用sp_rename命令修改触发器的名称 ;(3)使用alter trigger命令修改触发器正文;{(FOR|AFTER|INSTEADOF){[INSERT][,]UPDATE}}????????[NOTFORREPLICATION]????????AS????????{IFUPDATE(column)????????[{AND|OR}UPDATE(column)]????????[...n]??
文档评论(0)