存储过程总结 1

简介:

由于工作原因最近一直在看存储过程,之前只是对存储过程有个大体的了解,发现还有很多知识点需要学习,今天写下最近几天的总结,以备后患,好记忆不如烂笔头。

CREATE  PROC PROC_NAME [].[] 

创建存储过程,名称为PROC_NAME,或者以方括号的形式命名、展现

  /***************************************************/      

注解,一般为存储过程的注解,例如如下:

/***************************************************/            

--DECRIPT  外购入库单明细表保存(源单:采购检验申请单)           

--PARAM   标识            

--CREATE DATE   2010-11-16           

--CREATE AUTHOR  神舟龙  

--GROUP     U-Shop    

/***************************************************/    

@id int --编号id

这里声明的是参数,一般用于接收从界面传送的值,也可定义为输入、输出参数,如下:

@id int  output --编号id 输出参数

@id int  input --编号id 输入参数

如果同时声明多个参数用逗号隔开,如:

在声明多个参数是用括号括起来更加易懂,易于分辨

@finterid int,--单据内码          

@fentryid int,--单据分录号          

@fitemid int,--物料内码          

使存储过程处于隐藏和不可编辑状态,就是网上所谓的“加密”

declare声明变量,声明变量类型,这里的变量和上面所说的参数不同,很多人都把它们混为一谈,其实是错误的,异同:参数一般是从cs文件或者用户输入的值,即在调用存储过程时,输入或者输出的参数,而变量是在存储过程内部声明的,就像局部变量一样,在一个存储过程中声明了之后,同样可以在其他存储过程声明,注意变量和参数的声明方式不一样,参数直接声明不用关键字declare,而变量需要用declare声明,如果同时声明多个变量,方法和参数一样,用逗号(,)隔开就可以,一般不用括号。

WITH ENCRYPTION

设置参数或者字符都是用第一种方式,第二种也可以,一般不推荐,也可以为变量设置表达式,如下:

 

 

 

DECLARE @execsql nVARCHAR(100)

 

 

这里的set 意思同样也是设置,XACT_ABORT on 是事务回滚设置为全部回滚,当在执行事务时,如果出现错误则终止执行,回滚到语句“set  XACT_ABORT on  ”之前,如果“set  XACT_ABORT off ”则指回滚出现错误的地方,但是不会终止执行,代码会继续往下执行,有利于保持代码的健康度和健壮性



本文转自shenzhoulong  51CTO博客,原文链接:http://blog.51cto.com/shenzhoulong/441264,如需转载请自行联系原作者

相关文章
|
3月前
|
存储 SQL Oracle
存储过程
存储过程 oracle存储过程procedure:是一个为了完成特定功能的sql语句块,经编译后存放在数据库中,第一次编译后不需要再进行编译,用户可以通过指定名称和传递参数来执行。 优点: 1.高效,编译一次后保存到数据库,以后调用不需要编译,直接执行,减少编译时间; 2.降低网络流量,存放于数据库中,远程调用不会传输大量字符串的sql语句; 3.复用性高,存储过程是针对某一特定功能创建的,当再需要完成特定功能时调用该存储即可; 4.可维护性高,功能发生细微变化时,只需修改小部分代码即可; 5.安全性高,完成某一特定功能的存储过程是特定用户创建的,具有身份限制。 结构:过程声明
44 2
|
存储 SQL Java
什么是存储过程?
我们可以把存储过程看成是一些 SQL 语句的集合,中间加了点逻辑控制语句。存储过程在业务比较复杂的时候是非常实用的,比如很多时候我们完成一个操作可能需要写一大串 SQL 语句,这时候我们就可以写有一个存储过程,这样也方便了我们下一次的调用。存储过程一旦调试完成通过后就能稳定运行,另外,使用存储过程比单纯 SQL 语句执行要快,因为存储过程是预编译过的。
129 0
|
存储 SQL 定位技术
【机房重构】—存储过程当媒人
那是一个风和日丽的白天,重构帅小伙独自一人走在处处飘香的初夏的校园中,他一直在思考,如何与库美女更容易的交往呢?
|
存储 SQL 缓存
存储过程详细介绍
存储过程详细介绍
|
存储 SQL NoSQL
第15章_存储过程与函数
第15章_存储过程与函数
135 0
|
存储 SQL 数据库
【机房重构】——存储过程和触发器
【机房重构】——存储过程和触发器
173 0
【机房重构】——存储过程和触发器
|
存储 SQL NoSQL
存储过程与函数
MySQL从5.0版本开始支持存储过程和函数。存储过程和函数能够将复杂的SQL逻辑封装在一起,应用程序无须关注存储过程和函数内部复杂的SQL逻辑,而只需要简单地调用存储过程和函数即可
存储过程与函数
|
存储 SQL 数据库
存储过程详解
存储过程详解
266 0
存储过程详解
|
存储
存储过程的语法讲解
在上一篇文章:别再说不知道什么是存储过程和存储函数了中简单的介绍了存储过程和存储函数以及其使用。其实存储过程是可以进行编程的,所以可以和其他的编程语言一样使用变量、表达式以及控制结构进行编程,从而实现一些复杂和有用的功能。
289 0
存储过程的语法讲解