当前位置: 首页 > 图文教程 > 数据库 > MSSQL > SQL Server:如何正确理解存储过程

MSSQL
SQL Server TEXT、NTEXT字段拆分的问题
SQL Server事务日志的几个常用操作
SQL Server不存在或拒绝访问故障的排除
动态创建MSSQL数据库表存储过程
教你如何在SQL Server计算列和平均值
如何应用SQL Server中的DBCC避免堵塞
SQLServer2000分布式事务错误解决方法
通用SQL数据库查询语句精华使用简介
利用typeperf工具收集SQL Server性能数据
SQL 2008 FileStream数据类型
自定义用于ASP Web站点的 SQL 7.0 数据库
SQL server 2005安装问题大全
利用"SQL"语句自动生成序号的两种方式
SQL Server数据库管理员必备的DBCC命令
讲解在SQL Server 2005中实现异步触发器架构
SQL Server 2008的新特性概述:集成服务
SQL Server 2008关系数据库引擎的新增功能
浅析SQL 2008的Change Data Capture功能
在IIS中为SQL Server 2008配置报表服务
SQL Server 2008中报表服务详解

MSSQL 中的 SQL Server:如何正确理解存储过程


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-17   浏览: 63 ::
收藏到网摘: n/a

昨天,小编和大家谈了如何正确使用触发器,今天小编要和大家分享的是如何正确理解存储过程。存储过程也称为存储查询,是存储在数据库中预先定义的SQL语句。它可以将常用的或很复杂的工作预先用SQL语句写好,并用一个值得的名称存储起来。使用时,只需要调用该存储过程就可以自动完成命令。现在的程序员在代码中都不直接使用SQL字符串,而是利用创建和使用存储过程来代替。这样做的好处如下。

1.                   存储过程只在创建时进行编译,以后执行存储过程时都不需要重新编译;而SQL语句每执行一次都要编译一次,所以使用存储过程可以提供数据库执行速度。

2.                   当对数据库进行复杂操作时,可以将这些复杂操作利用存储过程封装起来与数据库提供的事务处理结合在一起使用。

3.                   存储过程的安全性高,可以设定只有魔鬼用户才具有对其指定存储过程的使用权。

4.                   存储过程可以将所有SQL语句代码集中存放于服务器,避免将.net代码和冗长的SQL语句混在一起,从而使.NET代码更容易维护。

5.                   在存储过程中可以使用输出参数,允许返回记录集或其他值。

6.                   存储过程可以重复使用,大大减少了数据库开发人员的工作量。

存储过程几乎总是比相应的SQL语句执行速度快,可以使用Create Procedure语句来创建一个存储过程,基本语法如下:

   Create Proc[edure][拥有者]存储过程名][;程序编号]

     [(canshu #1,…参数#1024)

[with

{recompile|encryption|recomole,encryption}

]

       [for replication]

        As  程序行

其中,存储过程名不能超过128个自己。每个存储过程中最多设定1024个参数,参数的使用方法如下:

@参数名 数据类型 varying】【=内定值】【outPut

在每个参数名的前面要有一个“@”符号,每一个存储过程的参数均为程序内部使用,参数的类型除了Image外,其他SQL Server所支持的数据库都可以使用。

=内定值】相当于在建立数据库时设定的一个自动的默认值,这里是为这个参数设定默认值。【output】是用来指导该参数是既有输入又有输出值的,也就是在调用了这个存储过程时,入果所指定的参数值是需要输入的参数,同事也一在结果中输出,则该项必须为output;如果只是作为输出参数,则可以用Curor,同事在使用该参数时,必须指定varyingoutput这两个语句。

以上是小编为大家总结的,希望对大家有所帮助。