- 1、本文档共50页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
SQL第08章 存储过程和触发器
MS SQL Server 程序设计 授课教师:黄丽萍 Email:98hlp@163.com 教研室:软件与理论教研室 第08章 存储过程和触发器 内容提要: 存储过程(Stored Procedure)是一组完成特定功能的Transact- SQL语句的集合。存储过程是通过用户、其他过程或触发器来调用执行。 利用存储过程可以保证数据的完整性,提高执行重复任务的性能和数据的一致性。 存储过程主要应用于控制访问权限、为数据库表中的活动创建审计追踪、将关系到数据库及其所有相关应用程序的数据定义语句和数据操作语句分隔开。 触发器(Trigger)是一种特殊的存储过程。触发器通常在特定的表上定义,当该表的相应事件发生时自动执行,用于实现强制业务规则和数据完整性等。 第08章 存储过程和触发器 本章内容: 8.1 存储过程概述 8.2 创建和管理存储过程 8.3 触发器概述 8.4 创建和管理触发器 8.5小结 8.1 存储过程概述 存储过程的主要用途: 提高了处理复杂任务的能力。 增强了代码的复用率和共享性。存储过程一旦创建后即可在程序中调用任意多次。 减少了网络中数据的流量。存储过程在服务器注册,加快了过程的运行速度。 加强了系统的安全性。存储过程具有安全特性(例如权限)和所有权链接,用户可以被授予权限来执行存储过程而不必直接对存储过程中引用的对象具有权限。 8.1 存储过程概述 8.1.1 存储过程的类型 SQL Server 2005支持的存储过程的类型主要有如下4类。 (1)系统存储过程。SQL Server 2005 中的许多管理活动都是存储过程执行的。 (2)用户定义的存储过程。 (3)临时存储过程。以“#”或“##”为前缀,表示局部临时存储过程和全局临时存储过程。 (4)扩展存储过程。以xp_为前缀,是SQL Server 2005的实例可以动态加载和运行的 DLL。 8.1 存储过程概述 8.1.2 存储过程的设计原则 用户创建存储过程时,应注意遵循以下几点原则。 存储过程最大不能超过128MB。 用户定义的存储过程只能在当前数据库中创建。 存储过程是为了处理那些需要被多次运行的Transact-SQL语句集。 SQL Server允许在存储过程创建时引用一个不存在的对象,系统只检查创建存储过程的语法。执行时,存储过程引用了一个不存在的对象,则这次执行操作将会失败。 存储过程可以嵌套使用。嵌套的最大层次可以用 @NESTLEVEL函数来查看。 8.1 存储过程概述 8.1.3 常用系统存储过程的使用 SQL Server 2005提供了许多系统存储过程,下面介绍几种常用的系统存储过程。 (1)sp_helpdb 用于查看数据库名称及大小。 (2)sp_helptext 用于显示规则、默认值、未加密的存储过程、用户定义函数、触发器或视图的文本。 (3)sp_renamedb 用于重命名数据库。 (4)sp_rename 用于更改当前数据库中用户创建对象(如表、列或用户定义数据类型)的名称。 (5)sp_helplogins查看所有数据库用户登录信息。 (6)sp_helpsrvrolemember 用于以查看所有数据库用户所属的角色信息。 8.2 创建和管理存储过程 8.2.1 创建存储过程 2.使用CREATE PROCEDURE语句创建存储过程 CREATE PROCEDURE语句的语法格式如下: CREATE PROC [ EDURE ] procedure_name [ ; number ] [ { @parameter_data_type } [ VARYING ] [ = default ] [ OUTPUT ] ] [ ,…n ] [ WITH { RECOMPILE | ENCRYPTION } ] [ FOR REPLICATION ] AS sql_statament [ ,…n ] 8.2 创建和管理存储过程 使用输入参数 输入参数允许传递信息到存储过程内 在 CREATE PROCEDURE 中指定 @参数名 数据类型 [=默认值] 8.2 创建和管理存储过程 使用输出参数:如果需要从存储过程返回一个或多个值,可以通过在存储过程中指定输出参数来实现(以 OUTPUT 关键字指定的变量)。 在 CREATE PROCEDURE 中指定 @参数名 数据类型 OUTPUT 通过输出参数向调用它的存储过程或客户端返回信息 mathtutor.sql 8.2 创建和管理存储过程 8.2.1 创建存储过程 例8.2创建一个存储过程,输出指定学生的姓名及课程名称、期末成绩信息。 程序代码如下: CREATE PROCEDURE stud
您可能关注的文档
- SPF小动物房操作.ppt
- SPIN 逻辑提问法.pptx
- SPSS课件第10章.ppt
- SQL Server 内部结构.pptx
- SQL SERVER 触发器的操作与管理.ppt
- SQL Server项目任务结题书.doc
- SQL2005触发器简介.doc
- SQL_触发器.ppt
- SQL数据库应用(第十一章).ppt
- Starter Unit 2 音标.ppt
- 2025年初级银行从业资格之初级个人理财考试题库及答案【夺冠】.docx
- 2025年初级银行从业资格之初级个人理财考试题库及参考答案(预热题).docx
- 深圳大学高数课件—统计学指数深证成指.ppt
- 2025年初级银行从业资格之初级个人理财考试题库及完整答案(夺冠).docx
- 2025年初级银行从业资格之初级个人理财考试题库【真题汇编】.docx
- 2025年初级银行从业资格之初级个人理财考试题库及答案(名师系列).docx
- 2025年初级银行从业资格之初级个人理财考试题库【达标题】.docx
- 湘雅儿科课件Measl.ppt
- 2025年初级银行从业资格之初级个人理财考试题库【名校卷】.docx
- 2025年初级经济师之初级经济师基础知识考试题库(综合题).docx
最近下载
- 高二历史选修1重要课知识点.doc
- 九年级物理电学培优习题.doc VIP
- 2023-2024学年广东省深圳中学高二上生物期末质量检测试题含解析.doc VIP
- 交管12123学法减分复习题库500道(满分必刷).docx
- 2023-2024学年粤教版科学五年级上册教学计划(含教学进度表).pdf
- 初中数学计算能力提高的方法教学研究课题报告.docx
- AQ 1028-2006煤矿井工开采通风技术条件.pdf
- 小红书美妆产品社交电商分析.docx VIP
- 氯乙烯化工企业安全生产操作规程.pdf VIP
- 最新国家开放大学电大本科《数学分析专题研究》期末试题标准题库及答案(试卷号:1087).pdf
文档评论(0)