存储过程编码规范

上传人:飞*** 文档编号:43315203 上传时间:2018-06-05 格式:DOC 页数:7 大小:75.50KB
返回 下载 相关 举报
存储过程编码规范_第1页
第1页 / 共7页
存储过程编码规范_第2页
第2页 / 共7页
存储过程编码规范_第3页
第3页 / 共7页
存储过程编码规范_第4页
第4页 / 共7页
存储过程编码规范_第5页
第5页 / 共7页
点击查看更多>>
资源描述

《存储过程编码规范》由会员分享,可在线阅读,更多相关《存储过程编码规范(7页珍藏版)》请在金锄头文库上搜索。

1、密级:秘密密级:秘密MM发行:发行:项目名:技术部项目名:技术部 -ALL 配置项类型:配置项类型:PS配置项编号:配置项编号:012版本号:版本号:200106状态:状态:1分册名称:第分册名称:第 1 册册/共共 1 册册SQLSQL SERVERSERVER存储过程存储过程编写规范编写规范福建中科讯信息技术有限公司福建中科讯信息技术有限公司总页数8正文7附录0生效日期:2001 年 6 月 15 日 编制:审核:批准:福建新意科技有限公司 SQL SERVER 存储过程编写规范开发部 版本号 2001061 发行对象: 收文:收文:发行通知单发行通知单 NO. 1.0文文件件认认可可 评

2、审者: 日期: / / (部门经理)认可者: 日期: / / (客户代表)分分发发清清单单:拷贝编码 发行日期发布给 1 1.0 部门经理 2 1.0 客户代表 3 1.0 文件档 - 公司联机拷贝文文件件更更改改摘摘要要:更改的部分只有在完全替换其所在的章节并在上面附上由部门经理签名的 发行通知单才能被发布。修订记录 日期日期修订说明修订说明修订人修订人福建新意科技有限公司 SQL SERVER 存储过程编写规范开发部 版本号 2001062 1创建存储过程的语法use goif exist drop PROCEDURE .goset setCREATE PROCEDURE . (param

3、eter_name datatype OUTPUT ,parameter_name datatype OUTPUT. AS Begin SQL_statementsEnd Go Set Set2存储过程命名约定存储过程的命名必须符合 P_调用分类_功能分类_详细名称格式,其中 P 表 示是存储过程, 详细名称是与存储过程意义相关联的汉语拼音首字母。 按功能分类:查询类:CX数据维护类:WH业务处理类:YW 例: P_YW_GFQS3变量名参数命名约定:a+变量类型+_+名称,变量类型用小写, 名称用大写。变量类型前缀Integerai_ Smallintegerasi_福建新意科技有限公司 S

4、QL SERVER 存储过程编写规范开发部 版本号 2001063 Tinyintati_ Varcharavc_ Charac_ Numerican_ Datetimeadt Smalldatetimeasdt内部变量命名约定:+变量类型+_+名称,变量类型用小写, 名称用大写。变量类型前缀 Integeri_ Smallintegersi_ Tinyintti_ Varcharvc_ Charc_ Numericn_ Datetimedt Smalldatetimesdt4使用光标命名方式:Cur_+名称,名称用小写,第一个字母大写。 用全局变量fetch_status 来判断光标执行是否

5、成功。 fetch_status 返回值:0 为成功,1 表示失败,2 表示未取到数据。5返回值约定0 为成功, 0 为失败, 1-99为其它类型返回值。 用 RETURN 返回值,例如: RETURN 0 建议: 编写通用错误处理过程(见 10 章) 。6备注过程前有文字说明,说明本过程是做什么的;调用者是谁;返回值的含义; 参数的含义;输入数据库;输出数据库;每一步操作前有文字说明,说明该操 作达到的目的。 格式为:/* 概要说明:福建新意科技有限公司 SQL SERVER 存储过程编写规范开发部 版本号 2001064 中文名称:用 途:数 据 库: 语法信息:输入参数:输出参数:调用举

6、例: 外部联系:上级调用: 下级调用: 输 入 表: 输 出 表: 功能修订:简要说明: 修订记录:2001/09/30 张静 创建*/7每一个存储过程均需按模板填写详细的设计文档见附件。8语句格式对函数和关键词用小写,其它场合用大写。 对 SQL 语句特别是 INERT、DELETE、UPDATE 语句成功与否的判断,用全局 变量error 和rowcount 来判断。 error 返回值:0 为成功。 rowcount 返回值:0 为没有记录被改动。由于rowcount 的值受每个执行命 令的影响,因此应在 SQL 语句后立即判断rowcount 的值,或声名一 个局部变量来保存rowco

7、unt 的值。 SELECT、INSERT 语句选择出多字段时,不要一个字段占一行,而采用以下形式SELECT c_dev_no = Dev_no, n_pay_no = Pay_no, c_usr_name = Usr_nameFROM Tel_bas_infotWHERE Usr_no = c_usr_no 采用规范的缩进文本格式书写 一般设置: TAB = 4, 并将 TAB 自动转换为空格; 若有多个 BeginEnd 语句嵌套时采用如下方式BEGIN /*1*/ BEGIN /*1.1*/福建新意科技有限公司 SQL SERVER 存储过程编写规范开发部 版本号 2001065 BE

8、GIN /*1.1.1*/ END /*1.1.1*/BEGIN /*1.1.2*/ END /*1.1.2*/END /*1.1*/ END /*1*/ 其中 1 表示第一级嵌套,1.1 表示第二级嵌套,1.1.1 表示第三级嵌套, 1.1.2 表示第三级的第二个嵌套 ,一般不要超过三级嵌套。9使用存储过程的注意事项当存储过程的某一部分出错时,均用 ROLLBACK TRANSACTION 对整个事务 (如果采用事务处理的话)进行回退。(只能运行一次过程的要采用事务) 存储过程中的注释 单行要用- 大段注释用 /* 注释内容 */ 的形式。 一个存储过程可以调用其他存储过程,这种嵌套调用的层

9、数限于 16,当前嵌套层 数的值保存在全局变量nestlevel 中。 可以在自己的 SQL Server 上执行另一个 SQL Server 上的存储过程,这时另一个 SQL Server 的名字应作为过程名的前缀。 但是远程过程的调用并非看作事务的一部分。所以当在一个事务进行远程的 调用后,远程过程在远程服务器上的修改不能滚回。 当创建过程和执行过程的语句均包括带参数名的 OUTPUT 选择时,过程将给调用 者返回一个值。 CREATE PROCEDURE 语句本身可包含在任意数目和类型的 SQL 语句,但 USE 和下面的 CREATE 语句除外 CREATE VIEW ,CREATE

10、DEFAULT ,CREATE RULE , CREATE TRIGGER ,CREATE PROCEDURE 如果执行一个调用其它过程的过程,被调用的过程可以存取第一个过程所生成的 目标,如临时表。 如果在过程内生成临时表(#) ,该临时表仅为该过程而存在;退出该过程时,该 临时表自动消失。为规范起见,要求退出前将其 drop。 可以用 sp_rename objname,newname 将存储过程改名。对其它被过程引用的对象的更名在重编译后会出问题,必须引起注意。可用 sp_help,sp_helptext 及 sp_depends 查看关于某过程的情况。建议不要用 sp_rename,而采用先 drop 后 create 的方法。福建新意科技有限公司 SQL SERVER 存储过程编写规范开发部 版本号 2001066 10 错误处理内部错误处理应采用通用错误处理过程,所有错误信息统一编号备查,便 于维护 错误代码错误说明备注

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号