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

MSSQL
MS-sql 2005拒绝了对对象 ''xxx'' (数据库 ''xxx'',架构 ''dbo'')的 SELECT 权限的解决方法
MSSQL 2005 LOG备份webshell的方法
快速将珊瑚虫IP数据库转MS SQL2005的图文教程
sql2005 远程连接问题解决方法
SQLServer 2005 列所有存储过程的语句
SQL Server 2005 模板参数使用说明
Sql Server 2005 默认端口修改方法
SQL Sever 2005 Express 安装失败解决办法
sql2005 根据指定字段排序编号
监视SQLServer数据库镜像[图文]
sqlserver2008 拆分字符串
字符串聚合函数(去除重复值)
SQL Server 2005 同步复制技术
SqlServer2005 链接服务器用法
SQL2008中 阻止保存要求重新创建表的更改 的解决方法
sql rollup用法 小计汇总
SQLServer 2008 Merge语句的OUTPUT功能
SQLServer 2008 新增T-SQL 简写语法
SQL Server 2005“备份集中的数据库备份与现有的数据库不同”解决方法
SQL2005 学习笔记 公用表表达式(CTE)

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-17   浏览: 62 ::
收藏到网摘: 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这两个语句。

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