第四章存储过程和触发器.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第4章 存储过程和触发器 4.1 存储过程 4.2 触发器 4.1 存储过程 4.1.1 存储过程基本概念 4.1.2 创建和执行存储过程 4.1.3 存储过程的修改和删除 4.1.1 存储过程基本概念 存储过程是指经过预先编译的SQL语句的集合,可以以一种可执行的形式永久地存储在数据库中。 需要时只需调用该过程就可以完成相应的操作。 存储过程类似于程序设计语言中的过程和函数。 4.1.1 存储过程基本概念(续) 存储过程具有以下优点。 (1)运行速度快 (2)模块化编程,增强代码的重用性和共享性 (3)减少网络通信量 (4)保证系统的安全性 4.1.1 存储过程基本概念(续) 在SQL Server中,存储过程有两种类型: 系统存储过程 用户定义的存储过程 系统存储过程存放在master数据库中并以sp_为前缀,主要是从系统表中获取信息,为系统管理员管理SQL Server提供支持。 用户自定义存储过程是由用户创建并能完成某一特定功能的存储过程。对于用户创建的存储过程,尽量不要以sp_作为其名称的前缀。 4.1.2 创建和执行存储过程 一、创建存储过程 T-SQL语句格式: CREATE PROC[EDURE] procedure_name [@parameter data_type [=default] [OUTPUT]][ ,…] [WITH ENCRYPTION] AS sql_statement; procedure_name:存储过程名 parameter:存储过程中定义的输入/输出参数 data_type:参数的数据类型 default:定义参数的默认值 OUTPUT:输出参数 WITH ENCRYPTION:加密存储过程 sql_statement:存储过程中要执行的T-SQL语句 一、创建存储过程(续) 创建存储过程时,需要注意以下几点: (1)CREATE PROCEDURE不能与其他的T-SQL语句位于同一个批处理中。 (2)创建存储过程的权限默认属于数据库拥有者。 (3)只能在当前数据库中创建存储过程。 (4)成功执行CREATE PROCEDURE语句后,存储过程名称将存储在sysobjects系统表中,而CREATE PROCEDURE语句的文本将存储在syscomments中。 (5)存储过程可以嵌套调用。 (6)存储过程中不允许使用创建数据库对象的语句。 一、创建存储过程(续) 例4.1 在学生-课程数据库中创建一个存储过程,查看“张明”同学的有关基本信息和选修课程的情况。 CREATE PROCEDURE student_course AS SELECT Student.Sno, Sname, Cname, Grade FROM Student, Course, SC WHERE Student.Sno = SC.Sno AND Course.Cno=SC.Cno AND Sname= 张明; 为了避免出现重复的存储过程名称而无法建立该存储过程,可以先使用以下语句: IF EXISTS(SELECT name FROM sysobjects WHERE name= student_course AND type=P) DROP PROCEDURE student_course; 一、创建存储过程(续) 系统存储过程sp_helptext: 查看存储过程中的SQL语句 系统存储过程sp_depends: 查看存储过程使用的对象以及调用该存储过程的其他存储过程的名称。 二、执行存储过程 EXECUTE语句格式如下: [EXEC[UTE]] [@return_status=]procedure_name [[@parameter = ] {value |@variable [OUTPUT]} [, ...n ]]; - return_status:是一个可选的整型变量,保存存储过程的返回状态。这个变量在EXECUTE语句之前,必须声明过。 - procedure_name:被调用执行的存储过程名。 - parameter:是CREATE PROC语句中定义的存储过程参数。在以@parameter_name?=?value格式使用时,参数名称和常量不一定按照CREATE PROC语句中定义的顺序出现,但是若有一个参数使用@parameter_name = value格式,则其他所有参数都必须使用这种格式。 - variable:保存输入参数或者输出参数值的变量。 - OUTPUT:输出参数。存储过程的匹配参数也须指定关键字OUTPUT。 二、执行存储过程(续) 例4.2

文档评论(0)

rovend + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档