存储过程及参数命名规范
- 格式:doc
- 大小:53.50 KB
- 文档页数:4
gp存储过程写法全文共四篇示例,供读者参考第一篇示例:存储过程(Stored Procedure)是一种在数据库中存储和执行的预编译的SQL代码,可以用于实现特定的功能或业务逻辑。
它们可以提高数据库的性能,减少网络流量,同时也可以简化客户端应用程序的开发过程。
在GP数据库中,存储过程是非常重要的,可以帮助我们更好地管理和维护数据库。
本文将介绍GP存储过程的写法,以及一些注意事项。
一、GP存储过程的语法在GP数据库中,我们可以使用T-SQL(Transact-SQL)语言编写存储过程。
一个基本的存储过程通常包含以下几个部分:1. 存储过程的名称:用于唯一标识存储过程的名称。
2. 参数列表:存储过程可以接受参数,可以是输入参数、输出参数或输入输出参数。
3. 存储过程体:包含实际的SQL代码,用于实现具体的功能。
4. 返回值:存储过程可以返回一个或多个值。
下面是一个简单的GP存储过程的示例:```sqlCREATE PROCEDURE usp_GetCustomerInfo@CustomerID INTASBEGINSELECT * FROM Customers WHERE CustomerID =@CustomerIDEND```以上示例是一个名为usp_GetCustomerInfo的存储过程,接受一个参数@CustomerID,然后根据该参数查询Customers表中的数据,并返回结果。
二、在GP中创建存储过程在GP中创建存储过程非常简单,可以通过SQL Server Management Studio或者GP提供的工具来实现。
下面是创建一个存储过程的简单步骤:1. 打开SQL Server Management Studio,连接到GP数据库。
2. 在“查询”窗口中输入存储过程的代码。
3. 按下F5键或者点击“执行”按钮,执行SQL语句,创建存储过程。
我们也可以在GP中使用存储过程向数据库中插入、更新、删除数据,或者执行复杂的逻辑操作。
数据库命名规范1.1数据库对象对象前缀数据库⽆表⽆视图VI索引IX存储过程SP函数FN触发器TR⾃定义数据类型udDefault DF主键pct.外键FKrule ru序列SqUNIQUE uq数据库对象采⽤26个英⽂字母(区分⼤⼩写)和0-9这⼗个⾃然数,加上下划线_组成,共63个字符。
不能出现其他字符(注释除外)。
同⼀个数据库中这些对象名都是不能重复C CHECK_CONSTRAINTD DEFAULT_CONSTRAINTF FOREIGN_KEY_CONSTRAINTIT INTERNAL_TABLEP SQL_STORED_PROCEDUREPK PRIMARY_KEY_CONSTRAINTS SYSTEM_TABLESQ SERVICE_QUEUETR SQL_TRIGGERU USER_TABLEUQ UNIQUE_CONSTRAINTV VIEW1.2命名规范规定1.表名使⽤单数名例如:对⽤户信息的表(User)不使⽤Users2.避免⽆谓的表格后缀1、表是⽤来存储数据信息的,表是⾏的集合。
那么如果表名已经能够很好地说明其包含的数据信息,就不需要再添加体现上⾯两点的后缀了。
2、 GuestInfo(存储客户信息)应写成Guest,FlightList(存储航班信息的表)应写成Flight3.所有表⽰时间的字段,统⼀以 Date 来作为结尾(⽽不是有的使⽤Date,有的使⽤Time)以⼤家都熟悉的论坛来说,需要记录会员最后⼀次登录的时间,这时候⼀般⼈都会把这个字段命名为LoginTime 或者 LoginDate。
这时候,已经产⽣了⼀个歧义;如果仅看表的字段名称,不去看表的内容,很容易将LoginTime理解成登录的次数,因为,Time还有⼀个很常⽤的意思,就是次数4.所有表⽰数⽬的字段,都应该以Count作为结尾5.所有代表链接的字段,均为Url结尾6.所有名称的字符范围为:A-Z, a-z, 0-9 和_(下划线)。
存储过程命名原则关键符加功能功能描述组成。
1.关键符:所有功能性的存储过程都以p_开头1)前台数据提取:web_p_et_user 用户相关p_et_shop 店铺相关p_et_item 商品相关p_et_bulk 团购相关p_et_order 订单相关p_et_blog 博客相关2)后台理:manage_p_adm_user 用户相关p_adm_shop 店铺相关p_adm_item 商品相关p_adm_bulk 团购相关p_adm_order 订单相关p_adm_blog 博客相关2.功能描述部分:1)获取信息get2)修改update3)插入insert4)删除del5)统计count6) 添加add6)可以追加by表示关键字。
例如:p_et_user_getuserbyidp_ adm_order_getorders5.2注释格式注释位置:存储过程顶部和其他需要位置例:------------------------------------------------------------------------------名称:p_et_user_getuserbyid--参数:1 ,@uerId--调用:userInfo.aspx--功能:获取用户信息--创建时间: 2008/12/02--创建者:xxx--修改时间:--简单使用方法exec p_et_user_getuserbyid@uerId=’123456’--------------------------------------------------------------------。
数据库命名设计规范数据库命名、设计规范⼀、数据库表及字段1.数据库表的命名规范:表的前缀应该⽤系统或模块的英⽂名的缩写(全部⼤写)。
如果系统功能简单,没有划分为模块,则可以以系统英⽂名称的缩写作为前缀,否则以各模块的英⽂名称缩写作为前缀。
例如:如果有⼀个模块叫做BBS(缩写为BBS),那么你的数据库中的所有对象的名称都要加上这个前缀:BBS_ + 数据库对象名称,BBS_CustomerInfo标⽰论坛模块中的客户信息表。
表的名称必须是易于理解,能表达表的功能的英⽂单词或缩写英⽂单词,⽆论是完整英⽂单词还是缩写英⽂单词,单词⾸字母必须⼤写。
如果当前表可⽤⼀个英⽂单词表⽰的,请⽤完整的英⽂单词来表⽰;例如:系统资料中的客户表的表名可命名为:SYS_Customer。
如果当前表需⽤两个或两个以上的单词来表⽰时,尽量以完整形式书写,如太长可采⽤两个英⽂单词的缩写形式;例如:系统资料中的客户物料表可命名为:SYS_CustItem。
表名称不应该取得太长(⼀般不超过三个英⽂单词)。
表名长度不能超过30个字符,表名中含有单词全部采⽤单数形式,单词⾸字母必须⼤写。
在命名表时,⽤单数形式表⽰名称。
例如,使⽤ Employee,⽽不是 Employees。
对于有主明细的表来说。
明细表的名称为:主表的名称 + 字符Dts。
例如:采购定单的名称为:PO_Order,则采购定单的明细表为:PO_OrderDts;对于有主明细的表来说,明细表必须包含两个字段:主表关键字、SN,SN字段的类型为int型,⽬的为与主表关键字联合组成明细表的关键字,以及标⽰明细记录的先后顺序,如1,2,3……。
表必须填写描述信息,后台表名尽量与前台表名相同,后台独有的表应以_b作为后缀。
如r_gggd_b。
数据库表的命名采⽤如下规则:1)表名⽤模块名_开头,表名长度不能超过30个字符,表名中含有单词全部采⽤单数形式,单词⾸字母必须⼤写。
2)多个单词间⽤下划线(_)进⾏连接。
存储过程编写规范
1、存储过程的语法(省略)
2、存储过程规范:
a)编写一个存储过程,详细说明存储过程创建人、创建时间、用途、注意点等。
3、注意点:
a)写法分为两种:
i.第一种:存储过程中直接编写sql语句,好处:编译时会自动验证sql 语法正
确性。
缺点:编译后若表存在时,存储过程运行不了。
如下图所示:
ii.第二种:存储过程编写sql 语句时,用引号引起来,好处:任何情况下都可以运行,但不会自动验证语法。
如下图所示:
b)存储过程中,若参数有月份(v_month)或天(v_day),则一般跑数据原则:先把
当月/当天数据清空,再重新跑数据,如下图所示:。
1数据库对象命名规范1.1基本命名原则以下基本原则适用于所有数据库对象命名,如无特别说明则为强制规范。
Ø规范:遵循行业规范当有相关国家/行业强制性数据结构标准规范存在时,用于存储某业务数据的业务表在表名命名上原则上应该遵从标准规定,其表中相关字段的中文名称(即数据项名称)若标准规范上有规定的应遵循规定。
此外,若标准规范上对数据项的类型、长度有规定的,原则上也应当遵循或保证能直接兼容保存和访问。
Ø规范:字母全部大写原则所有数据库对象命名字母全部大写。
Oracle对大小写不敏感,但是有些数据库对大小写敏感,统一大写有助于在多个数据库间移植。
Ø规范:字符范围原则只能使用英文字母、下划线、数字进行命名,首位字符必须是英文字母。
Ø规范:分段命名原则命名中多个单词间采用下划线分隔,以便阅读同时方便某些工具对数据库对象的映射。
如XXX_XXX_XXX,但不限于三段式。
Ø规范:勿用保留词数据库对象命名不能直接使用数据库保留关键字,但分段中可以使用。
如USER不能用于表名、列名等,但是USER_NAME可以用于列名,USER_INFO也可以用于表名。
详细保留关键字请参见最后第6.1节,保留字。
Ø规范:简单命名原则命名尽可能简单,避免太长的命名,尽量使用缩写形式,但是缩写也要能够表达命名的含义。
数据库对象命名总长度不得超过30字节,以免超过数据库命名长度限制(Oracle有30的限制,Mysql为64,SQL SERVER也是64)。
建议每个单词分段长度不要超过6位。
Ø建议:富有含义原则数据库对象命名通常用能表示其内容或者含义的英文单词或其缩写表示也可用其中文名称各字词的拼音首写字母或者拼音简写方式表示。
数字应尽量避免使用。
此外在公安行业,对于业务表上表示业务属性的字段名(即字段英文名)的命名,业内普遍默认的规范通常是以其中文名称的每个汉字拼音首字母组成。
竭诚为您提供优质文档/双击可除oracle,存储过程命名规范篇一:oracle存储过程编码规范oracle存储过程编码规范版本号:3.0目录1.目的.................................................12.名词解释与定义.......................................13.规范内容.............................................13.1.命名规范.............................................13.2.注释信息.............................................33.3.错误处理.............................................43.4.其它规范.............................................64.过程应用指南...........................................84.1.剪裁................................................. 84.2.使用指南 (8)1.目的规范项目sp代码的编写,保证程序风格的同一性和一致性。
2.名词解释与定义无3.规范内容3.1.命名规范3.1.1.存储过程名称采用“p+模块名一位缩写+功能描述”的格式命名;如p_ywRtjob。
3.1.2.存储过程的输入输出参数存储过程根据需要自行决定参数的数目、类型和长度;对于需要提交给任务管理器调用的存储过程,为了保证任务管理器的统一调度;需要用另外一个存储过程进行封装,该封装sp的输入参数采用i_parm命名,输出变量采用o_parm来命名,类型为varchar2(80),如长度需要超过80,提交讨论,原则不应大于200。
数据库命名规范一、数据库文件命名数据文件命名采用系统名+_+文件类型,比如系统名为ComSys,则数据库文件命名为ComSys_database.mdf,有的数据库文件有多个,比如SQL Server就有2个,一个是数据库文件,另一个是日志文件,那么他们的文件命名分别为ComSys_database.mdf,ComSys_log.log。
二、数据库对象命名规范数据库对象包括表、视图(查询)、存储过程(参数查询)、函数、约束。
对象名字由前缀和实际名字组成,长度不超过30。
1、前缀:使用小写字母。
如:表tb视图vi存储过程sp函数fn2、实际名字:实际名字尽量描述实体的内容,由单词或单词组合,每个单词的首字母大写,其他字母小写,不以数字和_开头。
如:表User_Info视图User_List存储过程User_Delete3、示例:合法的对象名字类似如下:表tb_User_Info tb_Message_Detail视图vi_Message_List存储过程sp_Message_Add三、表的命名1) 表名由前缀和实际名字组成。
前缀使用小写字母tb,表示表。
对工作用表来说,表名可以加上前缀WORK_ 后面附上采用该表的应用程序的名字。
在命名过程当中,根据语义拼凑缩写即可。
注意,由于ORCLE会将字段名称统一成大写或者小写中的一种,所以要求加上下划线。
举例:定义的缩写Sales: Sal 销售;Order: Ord 订单;Detail: Dtl 明细;则销售订单明细表命名为:tb_Sal_Ord_Dtl;2) 如果表或者是字段的名称仅有一个单词,那么建议不使用缩写,而是用完整的单词。
举例:定义的缩写Material Ma 物品;物品表名为:tb_Material, 而不是tb_Ma.但是字段物品编码则是:Ma_ID;而不是Material_ID3) 所有的存储值列表的表前面加上前缀Z目的是将这些值列表类排序在数据库最后。
数据库命名规则一.数据库:1. 基本命名规则表 1. 基本数据库对象命名2. 关于命名的约定变量 (T-SQL 编程中声明的变量 ) 、过程 ( 存储过程或触发器等 ) 、实体 ( 表、字段 ) 应该根据他们所代表的实体意义和进程作用来命名:表 2. 好的命名和不好的命名范例a. 动宾形式:动词放前面,名词放后面。
eg:prd_GetProductByIdb. 不要使用计算机术语,尽量使用面向公司业务的术。
c. 采用缩写如果完全根据上一条的要求,那么根据业务描述的过程名可能会变得很冗长,比如下面:prCountTotalAmountOfMonthlyPayments (计算每月付费的总金额)prGetParentOrganizationalUnitName ( 获取上级单位名称)Ø如果可以在字典里找到一个词的缩写,就用这个做为缩写,比如:Mon(Monday)、Dec(December)Ø可以删除单词元音(词首字母除外)和每个单词的重复字母来缩写一个单词。
比如:Current = Crnt、Address = Adr、Error = Err、Average = AvgØ不要使用有歧异的缩写(一般是语音上的歧义)。
比如b4(before)、xqt(execute),4tran(Fortran)3. 数据库命名根据项目的实际意义来命名4. 表命名“tbl_”+ 名称(名称尽量使用英文单词,每个单词的首字母大写)5. 字段命名表名(去掉前缀)缩写+ ”_”+ 属性名称(每个单词的首字母大写)缩写:五笔拆字法取字母一个单词:取前四个字母二个单词:取每个单词的前两个字母三个单词:取前两个单词的首字母和第三个单词的前两个字母。
四或四个以上:取前三个单词的首字母和最后一个单词的首字母。
6. 主键命名主键是针对一个表的, 而不是针对一个字段,因为主键是唯一的,一个表只能有一个主键。
数据库命名规范1概述1.1 基本原则以大小写敏感编写SQL语句。
尽量使用Unicode 数据类型。
优先使用连接代替子查询或嵌套查询。
尽量使用参数化SQL查询代替语句拼接SQL查询。
禁止使用[拼音]+[英语]的方式来命名SQL对象或变量。
尽量使用存储过程代替SQL语句。
1.2 基本规范建议采用Pascal样式或Camel样式命名数据库对象。
大写T-SQL语言的所有关键字,谓词和系统函数。
2命名规范在一般情况下,采用Pascal样式或Camel样式命名数据库对象,使在开发基于数据库应用程序的时候通过ORM工具生成的数据访问代码不需要调整就符合程序开发语言(比如C#)命名规范。
另外,关系型数据库同Xml结合得越来越紧密,规范的命名越来越重要。
在实际数据库开发过程中,如果需求方已经提供数据库设计方案,建议以提供的方案为准;在原有数据库上进行升级开发时,在可行的情况下可适当做出设计调整以符合编程规范。
2.1 对象命名2.1.1数据库第一种方式,采用Pascal样式命名,命名格式为[项目英文名称]。
示例:AdventureWorks第二种方式,采用Pascal样式命名,命名格式为[项目英文名称] + Db。
示例:AdventureWorksDbBizTalkRuleEngineDb建议采用第一种方式。
2.1.2数据库文件数据文件:[数据库名称] + _Data.mdf日志文件:[数据库名称] + _Log.ldf示例:AdventureWorks_Data.mdfAdventureWorks_Log.ldf2.1.3关系型数据仓库采用Pascal样式命名,命名格式为[项目英文名称] + DW。
示例:AdventureWorksDW2.1.4数据架构除SQL Server 系统定义的数据架构外,新建架构采用Pascal样式命名,命名格式为[架构名]。
示例:HumanResourcesProduction对数据库对象Table,View,Procedure,Function等使用数据架构进行归类。
数据库设计命名规范1.数据库涉及字符规范采用26个英文字母和0-9这十个自然数,加上下划线_组成,共36个字符。
不出现其他字符。
鉴于大小写规则难记忆,而且有些情况下,数据库不区分大小写,统一采用小写字母。
采用英文单词或英文短语(包括缩写)作为名称,不使用无意义的字符或汉语拼音。
名称应该清晰明了,能够准确表达事物的含义,最好可读,遵循“见名知意”的原则。
2.数据库对象命名规范数据库对象包括表、视图(查询)、存储过程(参数查询)、函数、约束。
对象名字由前缀和实际名字组成,绝对不要在对象名的字符之间留空格,长度不超过30。
使用单数(比如表名tb_customer,不要使用tb_customers)。
前缀:使用小写字母表tb_<表的内容分类>_<表的内容>视图vi存储过程sp函数fn索引idx_<表名>_<索引标识>主键pk_<表名>_<主键标识>外键fk_<表名>_<主表名>_<外键标识>序列seq实际名字:实际名字尽量描述实体的内容,由单词或单词组合,每个单词以‘_’间隔,字母小写,不以数字开头。
合法的对象名字类似如下。
表tb_user_info tb_message_detail视图vi_message_list存储过程sp_message_add3.数据库表设计规范表名由前缀和实际名字组成。
tb_<表的内容分类>_<表的内容>。
表的设计要符合3NF,然后,可以根据效率的需要,适当做一些冗余。
前缀:使用小写字母tb,代表表。
实际名字中,一个系统尽量采取同一单词,多个后面加_来连接区分。
合法的表名类似如下。
tb_membertb_member_infotb_forum_boardtb_blog_comment1一些作为多对多连接的表,可以使用两个表的前缀作为表名:如:用户表tb_user,用户分组表tb_group_info,这两个表建立多对多关系的表名为:tb_user_group_relation4.字段命名规范字段由表的简称,实际名字组组成。
SQL编程命名规范一、命名规则总原则:【不准使用中文或大写英文字母,以容易记忆和理解为原则,可以使用英文和汉语拼音简写,分隔符号为下划线,总长度不得超过20位】1、表名命名应尽量反映存储的数据内容。
结构为模块的简写+下划线+名字。
例如:用户信息表,他属于系统管理模块,这里以X作为系统管理模块的简写,user 作为用户信息的名字,这样用户信息表就命名为:x_user。
2、视图名视图以view_作为前缀。
命名应尽量体现各视图的功能。
3、触发器名以tr作为前缀,然后加上为相应的表名再加上后缀,Insert触发器加''_i'',Delete触发器加''_d'',Update触发器加''_u'',如:在表kc_jc进行更新操作后执行一个功能,则触发器的名字为:tr_kc_jc_u。
4、存储过程名参考表的命名规则,存储过程应以''p_''开头,然后是模块名字,后续部分主要体现存储过程的作用。
比如一个执行工资计算的存储过程,他属于工资模块,可以命名为。
p_gz_compute。
5、函数参考表的命名规则,函数以f作为前缀,然后是模块名字,后续部分主要体现函数的作用。
如:一个获得物料清单(BOM表)的,属于基本资料模块,可以命名为:f_jbzl_bom。
6、主键、外键关系、索引命名原则主键: PK_表名外键关系:FK_主表_从表索引:ID_列名,符合索引列名间用_隔开7、变量名采用小写,要体现变量的含义。
8、字段命名规则表简称+ 字段简称+ 类型x_user unamestru_namestrunameu_name类型简写+序号类型例子Varchar str01,str02Int int01,int02DateTime dt01,dt02Decimal dec01,dec02Text txt01,txt02Image img01,img029、表设计规则通常情况下用下面的设计,当一个表所用的的业务类型字段很通用时,那么设计时用中文简写或者英文二、代码、注释说明1、代码书写要执行SQLSERVER的默认规范.。
数据库、表、字段的命名规则每个公司或者企业数据库、表、字段等都有自己命名规则,数据库开发时数据库、表、字段、视图、触发器、存储过程、变量名、主键、外键、索引等的命名规则。
一、数据库(Database)数据库名称 = 数据库内容标识(首字大写)。
二、表(Table)命名应尽量反映存储的数据内容。
表名前缀:以该表及与该表相关联的一系列表的内容而得到一个代表统一的标识。
表名称 = T +‘_’+ 表名前缀+‘_’+ 表内容标识(首字大写) 。
如客户端信息ClientInfo相关联的一系的表以ci作为前缀,Record记录表即有表名:T_ci_Record。
数据库中不论是表名还是字段名,都一律用英文,不准出现其它语言;且保留原来的字段名,保留它们的规范。
为了不增加数据库当中的表名的长度,一般不允许出现如Form或者Table的字样,如:记录表:应为Record,而不是RecordTable。
数据库当中的表名的命名,一般不准出现空格,假如有几个单词出现的话,每个单词之间不允许留有空格,用”_”隔开如人事信息表:应为Human_Info,而不是Human Info;每个单词的第一个字母必须大写;如果太长,为了不增加编程的难度可采用缩写的方式,每个单词可取三到四个字母表示,也可根据实际情况,实际习惯进行缩写。
三、字段(Field)字段是数据库中的用途最广泛的,它的类型非常多,所以必须加类型前缀来标示它的类型。
字段名称 = F + 字段类型前缀 + 字段内容标识(首字大写) 。
为了编程的方便性,可在前面加上字段类型的前缀,一般取用类型的三个字母,但是不需要下化线,而且这三个字母必须小写;如姓名字段为字符型的话就应该为chrName;尝用字段类型的缩写可参考下面的形式:缩写- 类型chr- charnvr- nvarcharvcr -varcharnum -numberflt -floatdtm -datelng -longclb- clobblb- blob四、视图名(View)视图的名称 = "v_" + 视图内容标识(首字大写)如 v_Record。
详解MySQL存储过程参数有三种类型:in、out、inout⼀、MySQL 存储过程参数(in)MySQL 存储过程 “in” 参数:跟 C 语⾔的函数参数的值传递类似, MySQL 存储过程内部可能会修改此参数,但对 in 类型参数的修改,对调⽤者(caller)来说是不可见的(not visible)。
drop procedure if exists pr_param_in;create procedure pr_param_in(in id int -- in 类型的 MySQL 存储过程参数)beginif (id is not null) thenset id = id + 1;end if;select id as id_inner;end;set @id = 10;call pr_param_in(@id);select @id as id_out;mysql> call pr_param_in(@id);+----------+| id_inner |+----------+| 11 |+----------+mysql> select @id as id_out;+--------+| id_out |+--------+| 10 |+--------+可以看到:⽤户变量 @id 传⼊值为 10,执⾏存储过程后,在过程内部值为:11(id_inner),但外部变量值依旧为:10(id_out)。
⼆、MySQL 存储过程参数(out)MySQL 存储过程 “out” 参数:从存储过程内部传值给调⽤者。
在存储过程内部,该参数初始值为 null,⽆论调⽤者是否给存储过程参数设置值。
drop procedure if exists pr_param_out;create procedure pr_param_out(out id int)beginselect id as id_inner_1; -- id 初始值为 nullif (id is not null) thenset id = id + 1;select id as id_inner_2;elseselect 1 into id;end if;select id as id_inner_3;end;set @id = 10;call pr_param_out(@id);select @id as id_out;mysql> set @id = 10;mysql>mysql> call pr_param_out(@id);+------------+| id_inner_1 |+------------+| NULL |+------------++------------+| id_inner_3 |+------------+| 1 |+------------+mysql> select @id as id_out;+--------+| id_out |+--------+| 1 |+--------+可以看出,虽然我们设置了⽤户定义变量 @id 为 10,传递 @id 给存储过程后,在存储过程内部,id 的初始值总是 null(id_inner_1)。
编码规范1 命名规约1.1 数据库对象命名规约1.1.1 表名均采用Tab-前缀+单数英文名词表示,不加空格,每个词的首字母大写。
表示单个实体的表名:TabXxxx——XXXX为实体英文单词,例如:员工信息表——TabEmployee;表示两个实体关系的表名:TabXxYy——XxYy为实体汉语拼音声母字母,例如:项目课程信息表——TabProjectCourse。
1.1.2 视图名均采用View-前缀+视图主要内容或基表名称构成,其他约定同表名。
1.1.3 存储过程名均采用Proc-前缀+存储过程主要用途名称构成,其他约定同表名。
1.2 WinForms窗体与控件对象命名规约1.2.1 窗体名:均以frm-为前缀,采用英文单词表示,每个词的首字母大写。
临时窗体名:frm+使用者+用途。
例如:前台登录窗体——frmWaiterLogin。
主界面窗体名:frmMain+使用者。
例如:前台主界面窗体——frmMainWaiter。
1.2.2 控件名:均以前缀+用途或内容的英文单词表示,每个词的首字母大写。
TextBox控件:前缀为txt-,例如:用于输入用户名的TextBox——txtUserName。
Label控件:前缀为lbl-。
Button控件:前缀为btn-。
ComboBox控件:前缀为cmb-。
CheckBox控件:前缀为chk-。
RadioButton控件:前缀为rad-。
DataGrid控件:前缀为grd-。
MainMenu控件:前缀为mmu-。
ContextMenu控件:前缀为cmu-。
子菜单项:mu+菜单项名+子菜单项用途,例如:“文件”菜单中的“退出”项——muFileExit。
1.3 C# 类名与变量名命名规约1.3.1 类名:均以Cls-为前缀。
1.3.2 类数据成员名:私有变量均以下划线“_”为前缀,首字母小写。
1.3.3 变量名:1.3.3.1 基本类型变量以变量类型的缩写为前缀,首字母小写。
密级:秘密-MM发行:项目名:技术部--ALL配置项类型:PS配置项编号:012版本号:2001-06状态:1分册名称:第1册/共1册SQL SERVER存储过程编写规范福建中科讯信息技术有限公司发行对象:发行通知单NO. 1.0文件认可评审者:日期:/ /(部门经理)认可者:日期:/ /(客户代表)分发清单:拷贝编码发行日期发布给1 1.0 部门经理2 1.0 客户代表3 1.0 文件档- 公司联机拷贝文件更改摘要:更改的部分只有在完全替换其所在的章节并在上面附上由部门经理签名的发行通知单才能被发布。
修订记录日期修订说明修订人1创建存储过程的语法use <database name>goif exist …drop PROCEDURE <usename>.<procedure_name>gosetsetCREATE PROCEDURE <usename>.<procedure_name>[[(]@parameter_name datatype [OUTPUT][,@parameter_name datatype [OUTPUT]]..[]]ASBeginSQL_statementsEndGoSetSet2存储过程命名约定存储过程的命名必须符合P_调用分类_功能分类_详细名称格式,其中 P表示是存储过程,详细名称是与存储过程意义相关联的汉语拼音首字母。
按功能分类:查询类:CX数据维护类:WH业务处理类:YW例: P_YW_GFQS3变量名参数命名约定:@a+变量类型+’_’+名称,变量类型用小写, 名称用大写。
变量类型前缀Integer @ai_Smallinteger @asi_Tinyint @ati_Varchar @avc_Char @ac_Numeric @an_Datetime @adtSmalldatetime @asdt内部变量命名约定:@+变量类型+’_’+名称,变量类型用小写, 名称用大写。
SQLServer存储过程命名标准
这个标准蓝图的存储过程命名⽅法只适⽤于SQL 内部,当创建⼀个新的存储过程,或者发现⼀个没有按照这个标准构造的存储过程,请使⽤这个标准。
注意:如果存储过程以sp_ 为前缀开始命名那么会运⾏的稍微的缓慢,这是因为SQL SERVER将⾸先查找系统存储过程,所以我们决不推荐使⽤sp_作为前缀。
句法:
存储过程的命名有这个的语法:
[proc] [MainTableName] By [FieldName(optional)] [Action]
[ 1 ] [ 2 ] [ 3 ] [ 4 ]
[1] 所有的存储过程必须有前缀'proc'. 所有的系统存储过程都有前缀"sp_", 推荐不使⽤这样的前缀因为会稍微的减慢。
[2] 表名就是存储过程访问的对象。
[3] 可选字段名就是条件⼦句。
⽐如: procClientByCoNameSelect, procClientByClientIDSelect
[4] 最后的⾏为动词就是存储过程要执⾏的任务。
如果存储过程返回⼀条记录那么后缀是:Select
如果存储过程插⼊数据那么后缀是:Insert
如果存储过程更新数据那么后缀是:Update
如果存储过程有插⼊和更新那么后缀是:Save
如果存储过程删除数据那么后缀是:Delete
如果存储过程更新表中的数据 (ie. drop and create) 那么后缀是:Create
如果存储过程返回输出参数或0,那么后缀是:Output
例⼦:
⼀个仅仅返回⼀个输出参数的存储过程:
过时的风格:
推荐的风格:。
数据仓库命名规范2.1.1.1.2.DW事实表表名前缀为DW_主题名(缩写)—功能描述。
数据表名称必须以有特征含义的单词或缩写组成,中间可以用“_”分割,例如:DW_ORD_DETAIL。
表名称不能用双引号包含,表名长度不超过30个字符。
•主题名规则如下:■订单ORD■营销活动MKC■贷款LN■网银NET■客户CUS■如有新主题,按规则添加•数据表名规则如下:■基础表_BA■日汇总表_D■月汇总表_M■历史累计_H■全量加载_A■增量加载_I2.1.1.1.3.APP应用层表名前缀为APP_主题名(缩写)—功能描述。
数据表名称必须以有特征含义的单词或缩写组成,中间可以用“_”分割,例如:APP_RPT_DEALER_GOODS。
表名称不能用双引号包含,表名长度不超过30个字符。
•主题名规则如下:■报表RPT•数据表名规则如下:参考DW层表名称规范2.1.1.1.4.DW/DM维度表表名前缀为D_。
数据表名称必须以有特征含义的单词或缩写组成,中间可以用“_”分割,例如:D_ACCOUNT、D_PUB_DATE。
表名称不能用双引号包含,表名长度不超过30个字符。
•数据表名规则如下:■日期维度D_PUB_DATE■城市D_CITY2.1.1.1.5.元数据表名前缀为M_应用名(缩写)—功能描述。
数据表名称必须以有特征含义的单词或缩写组成,中间可以用“_”分割,例如:M_ETL_TASK。
表名称不能用双引号包含,表名长度不超过30个字符。
•应用名规则如下:■ETLETL■报表RPT■OLAP分析OLP■源系统SRC■数据库DB■软硬件SHW■■如有新应用,按规则添加2.1.1.2.表分区名前缀为P。
分区名必须有特定含义的单词或字串。
例如:tbl_pstn_detail的分区p2004100101表示该分区存储2004100101时段的数据。
2.1.1.3.字段名字段名称必须用字母开头,采用有特征含义的单词或缩写,不能用双引号包含。
存储过程及参数命名规范
一、存储过程命名规范
1.操作方式add(添加) mod(修改) del(删除) sel(查询) drag(托拽) copy(拷贝) lock(锁) chk(检查) cho(选择) rp(报表) ini(初始化) get(得到function专用)
2.结果类型Tree(树) Tab(表)
3.修饰语A(Tab专用修饰符all)
4.顺序bf(之前)
5.过程标识P (对外过程) F(方法) E(内部过程)
公有过程命名规则
公式:过程名=标识+对象条件+操作及修饰
过程标识_对象名(By条件)(结果类型)_主操作方式(修饰语) (顺序)(次操作方式) ()是可选对象
例:
树查询p_xxxxTree_Sel
树节点查表p_xxxxTab_Sel
主特征表查询P_xxxxByChr_Sel
明细特征表查询P_xxxxByDtlChr_Sel
查询所有p_xxxxx_SelA
独立选择框树P_xxxxTree_Cho
独立选择框树查表P_xxxxTab_Cho
独立选择框待选项查询p_xxxxByChr_Cho
独立选择框已选择项查询P_xxxxSeled_Cho
业务绑定选择框树P_xxxxforxxxTree_Cho
业务绑定选择框树查表P_xxxxforxxxTab_Cho
业务绑定选择框普通查询p_xxxxforxxxByChr_Cho
业务绑定已选择项查询P_xxxxforxxxSeled_Cho
除主页面查询外的其他条件查询P_xxxxByxxxx_Sel
新增P_xxxx_Add
修改P_xxxx_Mod
删除P_xxxx_Del
删除前检查P_xxxx_ChkBfDel
初始化P_xxxx_IniBfxxx
新增,修改,删除任选合一P_xxxx_Save
方法命名规则
F_getxxx //函数使用GET
内部过程命名规则
E_xxxxByxxx_Mod//内部方法
E _xxxx_ChkDel
E _xxxx_ChkMod
E _xxxxByxx_Mod
二、变量命名规范
1.摘要表引用变量命名尽量定义在pkg_bom_define中防止重复定义
Dt_xxxxx 如:dt_cnctype_jp
2.自定义常量命名尽量定义在pkg_bom_define中防止重复定义
Const_xxxx 如:const_Leaf
3.自定义变量尽量定义在包头防止各过程重复定义
Var_xxxx 如:var_curpage 字符型变量
Flt_xxxx 如:flt_monery浮点型变量
Num_xxxx 如:num_pagecount数字型变量
三、RECORD命名规范
Record命名:
1.普通对象:Xxxx_Rec 例:Type Role_Rec is Record
2.树对象:XxxxTree_Rec 例: Type RoleTree_Rec is Record
四、游标定义规范
1.对外返回游标普通游标c_xxx 树游标c_xxxTree
例:type c_role is ref cursor return role_Rec; --返回角色信息游标
2.内部使用动态游标cur_xxx
例:for cur_num in c_num1(i_role_class) loop
五、类型自定义对象及table对象命名规范
1.自定义对象命名对象名=模形名称_OBJ 例:CALENDAR_OBJ
2. 自定义TABLE命名
名称=模形名称_ OBJ_ARRAY 例:CALENDAR_OBJ_ARRAY
六、入参自定义类型名称规范
自定义table类型入参数命名入参集对象命名=i_模型名称_array例:i_hour_array
procedure Ssp_BfHourdelete_check(i_hour_array in HOUR_OBJ_ARRAY, --工时对象
o_Return_Code Out Varchar2, --返回代码
o_Error_Message Out Varchar2, --错误信息
o_Sqlerrm Out Varchar2 --错误sql信息
)is
七、JAVA方法命名规范
在dao接口中命名规范如下:
原则:1、过程中P开头的需要定义方法,其他则不需要
2、方法命名公式:方法名=操作及修饰+对象条件
参考:过程公式:过程名=标识+对象条件+操作及修饰
例:过程名:P_xxxx_ChkBfDel JA V A方法名:chkBfDelxxx
过程名:P_xxxxTree_Sel JA V A方法名:queryXxxxTree
过程名:P_xxxx_Mod JA V A方法名:modXxxx
过程名:P_xxx_SelA JA V A方法名:queryAllXxx
注意事项:1、如果过程结尾是Sel 或SelA JA V A方法为query 或queryAll
2、如果过程结尾是Cho JA V A方法为queryXxxxCho
其他则严格按原来的过程命名规则定义JA V A方法名称。
八、工作量评估
按上面要求进行修改,则要修改现有的520个过程以及所有的JA V A的service,dao以及control层。
九、建议过程修改方法
过程名修改将导致JA V A开始人员无法对应Procedure名与JA V A方法名的对应关系。
建议建立对应关系文件。
表格式如下:。