- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第8章存储过程.ppt
第8章 存储过程 存储过程概述 存储过程是为完成特定的功能而汇集在一起的一组SQL程序语句,经编译后存储在数据库中的SQL程序。 在 SQL Server 中使用存储过程而不使用存储在客户端计算机本地的 T-SQL 程序的优点包括: (1)存储过程已在服务器注册。 (2)存储过程具有安全特性(例如权限)。 (3)存储过程允许模块化程序设计。 (4)存储过程是命名代码,允许延迟绑定。 (5)存储过程可以减少网络通信流量。 8.1 创建存储过程 在SQL Server中,可以使用两种方法创建存储过程: (1)T-SQL语句; (2)利用SQL Server 管理平台创建存储过程。 当创建存储过程时,需要确定存储过程的三个组成部分: (1)所有的输入参数以及传给调用者的输出参数。 (2)在存储过程中执行的T-SQL语句。 (3)返回给调用者的状态值,以指明调用是成功还是失败。 8.1.1 T-SQL创建存储过程 CREATE PROCEDURE的语法形式如下: CREATE PROC|PROCEDURE [schema_name.]procedure_name[;number] [{@parameter[type_schema_name.] data_type}[VARYING][=default][[OUT[PUT]][,...n] [WITH procedure_option [,...n] [FOR REPLICATION] AS {sql_statement[;][...n]|method_specifier}[;] procedure_option ::= [ENCRYPTION] [RECOMPILE] ?[EXECUTE_AS_Clause] sql_statement ::= {[BEGIN] statements [END]} method_specifier ::= EXTERNAL NAME assembly_name.class_name.method_name 8.1.2使用管理平台创建存储过程 (1)在SQL Server管理平台中,展开指定的服务器和数据库,然后展开程序,右击存储过程选项,在弹出的快捷菜单中依次选择“新建→存储过程…”选项,如图8-2所示,出现创建存储过程窗口。 (2)在文本框中可以输入创建存储过程的T_SQL语句,单击“执行”按钮,即可创建该存储过程。 8.1.2使用管理平台创建存储过程 例8-1 创建一个带有SELECT语句的简单存储过程,该存储过程返回学生的学号、姓名和性别。该存储过程不使用任何参数 程序清单如下。 USE test GO CREATE PROCEDURE info_s1 AS SELECT sno,sname,ssex FROM s GO 8.1.2使用管理平台创建存储过程 例8-2 创建一个存储过程,以简化对sc表的数据添加工作,使得在执行该存储过程时,其参数值作为数据添加到表中。 程序清单如下: CREATE PROCEDURE sc_insert @Param1 char(3),@Param2 char(3),@Param3 tinyint AS BEGIN insert into sc(sno,cno,grade) values(@Param1,@Param2,@Param3) END 8.1.2使用管理平台创建存储过程 例8-3 创建一个带有参数的简单存储过程,该存储过程接受与传递的参数精确匹配的值 程序清单如下。 CREATE PROCEDURE Getinfo @ssno char(3) AS SELECT sno,cno,grade FROM sc WHERE sno = @ssno; GO 8.1.2使用管理平台创建存储过程 例8-4下面的存储过程从表person.contact中返回指定的一些员工姓名及其电话。该存储过程对传递的参数进行模式匹配。如果没有提供参数,则使用预设的默认值(姓氏以字母D开头) 程序清单如下。 CREATE PROCEDURE person_info2 @firstname varchar(8)=张% AS SELECT sno,sname,sdept FROM s WHERE sname LIKE @firstname 8.1.2使用管理平台创建存储过程 例8-5显示有一个输入参数和一个输出参数的存储过程。存储过程中的第一个参数@sn将接收由调用程序指定的输入值(学生姓名),第二个参数@sg(成绩)将用于将该值返回调用程序。SE
您可能关注的文档
最近下载
- 远红外磁疗贴产品技术要求标准2024年版.docx VIP
- 台儿庄古城导游词及景点讲解词.docx VIP
- 中级绿化工试题及答案.docx VIP
- DB51T1511-2022FDIS建设项目对自然保护区自然资源、自然生态系统和主要保护对象影响评价技术规范.pdf VIP
- 电动自行车车棚安装施工方案.docx VIP
- 太阳能光伏路灯项目可行性研究报告.doc VIP
- QB_T 4045-2010 聚氨酯家居用合成革安全技术条件.pdf VIP
- 航空气象法律法规讲解.ppt VIP
- 某某垃圾场填埋场突发环境应急预案正本-备案2025年第二版.doc VIP
- 2025江苏省数据集团第二批招聘考试参考试题及答案解析.docx VIP
原创力文档


文档评论(0)