第8章存储过程、触发器和函数.ppt
《第8章存储过程、触发器和函数.ppt》由会员分享,可在线阅读,更多相关《第8章存储过程、触发器和函数.ppt(48页珍藏版)》请在第壹文秘上搜索。
1、第第8章章存储过程、触发器存储过程、触发器本章学习目标本章学习目标 掌握存储过程的基本概念、特点和类型掌握存储过程的基本概念、特点和类型 掌握存储过程的创建和执行方式掌握存储过程的创建和执行方式 掌握存储过程的管理方式掌握存储过程的管理方式 掌握触发器的基本概念、特点和类型掌握触发器的基本概念、特点和类型 掌握触发器的创建和管理方式掌握触发器的创建和管理方式本章本章主要内容主要内容 存储过程概述存储过程概述 创建和执行存储过程创建和执行存储过程 管理存储过程管理存储过程 创建触发器创建触发器 管理触发器管理触发器8.1 存储过程概述存储过程概述1.存储过程的定义2.存储过程的特点3.存储过程的
2、类型1.存储过程的定义存储过程的定义 存储过程是一组为了完成特定任务的SQL语句 集,是 利 用 S Q L S e r v e r 所 提 供 的Transact-SQL语言所编写的程序。存储过程经编译和优化后存储在数据库服务器中。存储过程可以由应用程序通过一个调用来执行,而且允许用户声明变量。存储过程可以接收和输出参数、返回执行存储过程的状态值。2.存储过程的特点存储过程的特点 存储过程允许用户模块化程序设计,大大提高程序的设计效率。存储过程可以强制应用程序的安全性,可以防止SQL嵌入式攻击。由于存储过程在服务器端存储和运行,并且第一次执行后在内存中保留,以后调用时不需要再次从磁盘装载,能
3、够实现更快的执行速度。用户执行存储过程时,只需在客户端通过指明所调用的存储过程的名称来调用存储过程,可大大较少网络通信流量。存储过程具有安全特性和所有权链接,可以执行所有的权限管理。3.存储过程的类型存储过程的类型 用户自定义存储过程 扩展存储过程 系统存储过程。8.2 创建和执行存储过程创建和执行存储过程 1.在图形界面下创建存储过程2.用Transact-SQL语句创建不带参数的存储过程 3.用Transact-SQL语句创建带参数的存储过程 4.在图形界面下执行存储过程5.使用Transact-SQL语句执行存储过程1.在图形界面下创建存储过程在图形界面下创建存储过程2.用用Transa
4、ct-SQL语句创建不带参语句创建不带参数的存储过程数的存储过程 语法:CREATE PROCEDURE procedure_nameASsql_statement【例8-1】CREATE PROCEDURE hotel_proc2ASSELECT 身份证号,姓名,电话 FROM 客户信息3.用用Transact-SQL语句创建带参数语句创建带参数的存储过程的存储过程 语法:CREATE PROCEDURE procedure_name;numberparameter data_type VARYING=defaultOUTPUT,.n WITH RECOMPILE|ENCRYPTION|RE
5、COMPILE,ENCRYPTIONFOR REPLICATION AS sql_statement .n 【例8-2】CREATE PROCEDURE hotel_proc3name varchar(12)ASSELECT*FROM 客户信息WHERE 姓名=name4.在图形界面下执行存储过程在图形界面下执行存储过程5.使用使用Transact-SQL语句执行存储语句执行存储过程过程EXECUTE procedure_name【例8-4】DECLARE temp varchar(12)SET temp=李铭EXECUTE hotel_proc3 temp【例例8-3】创建一名为创建一名为h
6、otel_proc4的存储过程,实现前的存储过程,实现前n个自然数的求个自然数的求和功能,并使得该存储过程在每次执行时都被重新编译,且要求对其原和功能,并使得该存储过程在每次执行时都被重新编译,且要求对其原始始Transact-SQL语句进行加密。语句进行加密。CREATE PROCEDURE hotel_proc4in int,sum int OUTPUTWITH RECOMPILE,ENCRYPTIONASDECLARE i intDECLARE s intSET i=1SET s=0WHILE i=inBEGINSET s=s+iSET i=i+1ENDSET sum=s【例8-5】执行
7、例8-3创建的存储过程hotel_proc4。DECLARE s intEXECUTE hotel_proc4 100,s OUTPUTPRINT 1+2+.+99+100=+str(s)8.3管理存储过程管理存储过程1.使用“对象资源管理器”查看存储过程 2.使用系统存储过程查看存储过程3.使用“对象资源管理器”修改存储过程4.使用Transact-SQL语句修改存储过程5.使用“对象资源管理器”删除存储过程6.使用Transact-SQL语句删除存储过程 1、使用、使用“对象资源管理器对象资源管理器”查看存储查看存储过程过程 2、使用系统存储过程查看存储过程、使用系统存储过程查看存储过程
8、用 户 可 以 先 用 系 统 存 储 过 程sp_stored_procedures列出当前环境中所有的存储过程,然后使用另一个系统存储过程sp_helptext查看某存储过程的正文信息。3、使用、使用“对象资源管理器对象资源管理器”修改存修改存储过程储过程4、使用、使用Transact-SQL语句修改存语句修改存储过程储过程ALTER PROCEDURE procedure_name;numberparameter data_type VARYING=defaultOUTPUT,.nWITH RECOMPILE|ENCRYPTION|RECOMPILE,ENCRYPTIONFOR REPL
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 存储 过程 触发器 函数