存储过程解析

存储过程解析

ID:28019167

大小:227.68 KB

页数:13页

时间:2018-12-07

存储过程解析_第1页
存储过程解析_第2页
存储过程解析_第3页
存储过程解析_第4页
存储过程解析_第5页
资源描述:

《存储过程解析》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、存储过程在使用Microsoft⑧SQLServer™2000创建应用程序吋,Transact-SQL编程语言是应用程序和SQLServer数据库之间的主耍编程接口。使叫Transact-SQL程序时,可用两种;/法存储和执行程序。可以在本地存储程序,并创建内SQLServer发送命令并处理结果的应用程序;也可以将程序在SQLServer屮存储为存储过程,并创建执行存储过程并处理结果的应用程序,SQLServer中的存储过程与其它编程iS•言中的过程类似,原因足存储过程可以:*接受输入参数并以输出参数的形式将多个位返M至调用过程或批处理。*包

2、含执行数据库操作(包拈调用其它过程)的编程语句。*向调用过程或批处理返回状态值,以表明成功或失败(以及失败原因)。可使用Transact-SQLEXECUTE语句运行存储过程。存储过程与函数不同,因为存储过程不返回取代其名称的值,也不能直接用在表达式中。使用SQLServer中的存储过程而不使用存储在客户计算机本地的Transact-SQL程序的优势有:*允许模块化程序没计0只需创建过程一次并将Jt存储在数据库屮,以后即可在程序屮调用该过程任意次。存储过程可山在数据库编程方而有专长的人员创建,并可独立于程序源代码而单独修改。*允许史快执行。如

3、果架操作需要大量Transact-SQL代砰或需递:发执行,存储过程将比Transact-SQL批代时的执行耍快。将在创建存储过程吋对其进行分析和优化,并可在首次执行该过程记使川该过程的内存中版木。每次运行Transact-SQL语句吋,都耍从容户端熏发送,并且在SQLServer每次执行这些语句时,都要对其进行编译和优化。*减少网络流M。一个需耍数百行Transact-SQL代码的操作由一条执行过程代码的单独语句就可实现,而不需要在网络中发送数&行代码。*可作力安全机制使川。即使对于没有直接执行存储过程中语句的权限的用户,也可授T他们执行该

4、存储过程的权限。SQLServer存储过程是用Transact-SQL语句CREATEPROCEDURE创建的,并可用ALTERPROCEDURE语句进行修改。存储过程定义包含M个主要组成部分:过程名称及其参数的说明,以及过程的主体(3X-屮包含执行过程操作的Transact-SQL语句)。一、扩展存储过程扩展存储过程使您得以使用象C这样的编程语言创建ft己的外部例程。对用户来说,扩展存储过程与普通存储过程一样,执行方法也相同。可将参数传递给扩展存储过程,扩展存储过程叫返回结果,也可返回状态。扩展存储过程可用于扩展Microsoft®SQLS

5、erver™2000的功能。扩展存储过程是SQLServer可以动态装载并执行的动态链接库(DLL)。扩展存储过程直接在SQLServer的地址空M运行,并使用SQLServer开放式数据服务(ODS)APT编程。编写好扩展存储过程后,固定服务器角色sysadmin的成员即可在SQLServer中注册该扩展存储过程,然后授予其他用户执行该过程的权限。扩展存储过程只能添加到master数据库中。说明扩展存储过程可能会产生内存泄漏或其它降低服务器的性能及可靠性的问题。应考虑将扩展存储过程存储在一个不同于包含被引川数据并使用分布式査询访问数据库的实

6、例的SQLServer实例屮。有关更多信息,谘参见分布式查询。如何添加扩展存储过程(企业管理器)添加扩展存储过程1、展开•服务器组,然后展丌服务器。2、展开"数据库"文件夹,再展幵master数据库。3、右击"扩展存储过程",然后单击"新建扩展存储过程"命令。4、在"名称"框中输入扩展存储过程的名称。5、在"路径"中,输入包含此扩展存储过程的动态链接库的路径。单击按钮,杳找包含此扩展存储过程的DLL。(可选)二、创建存储过程可使川Transact-SQLi5•句CREATEPROCEDURE创建存储过程。创建存储过程前,请考虑下列事项:*不能

7、将CREATEPROCEDURE语句与其它SQL语句组合到单个批处理中。*创建存储过程的权限默认属于数据库所有荞,该所有荞可将此权限授予Jt•他用户。*存储过程足数据库对象,其名称必须遵守标识符规则。*只能在当前数据库屮创建存储过程。创建存储过程吋,应指定:*所冇输入参数和向调用过程或批处理返回的输出参数。*执行数据库操作(包括调用其它过程)的编程语句。*返回至调川过程或批处理以表明成功或失败(以及火败原因)的状态值。系统存储过程MicrosoftSQLServer™2000屮的许多管理活动是通过一种称为系统存储过程的特殊过程执行的。系统存储

8、过程在master数据库中创建并存储,带有sp前缀。可从任何数据库中执行系统存储过程,而无需使川master数据库名称來完全限定该存储过程的名称。强烈建议您不要创建

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。