版本记录: 当前版本: 作 者: 完成日期: 签 收 人: 文件状态: [ ] 草稿 [√] 正式发布 [ ] 正在修改 签收日期: 1、 编写目的 使用统一的命名和编码规范,使数据库命名及编码风格标准化,以便于阅读、理解和 继承。 2、 适用范围 本规范适用于公司范围内所有以SQL SERVER 2000 作为后台数据库的应用系统和项目 开发工作。 3、 对象命名规范 3.1 数据库名 数据库名定义为系统名+_+模块名, 如“yd_df” 表示用电系统的电费处理模块数据库。 数据库名全部采用小写。 3.2 数据库文件 数据文件命名采用数据库名+_+文件类型+[文件序号]+文件后缀, [文件序号]为1、2、3…9 等数值,当数据库中某一文件类型的文件有多个时加上文 件序号以区别。只有一个时可不加。 第2/8页 文件后缀:主数据文件为.mdf,其它数据文件为.ndf,日志文件为.ldf 文件名全部采用小写。 比如系统名为“yd_df”,则数据库数据文件命名为“yd_df_data.mdf”,日志文件命 名为“yd_df_log.ldf”。 3.3 表 表命名要遵循以下原则: Ø 采用“系统名+t_+模块名+_+表义名” 格式构成 Ø 若数据库中只含有单个模块,命名可采用“系统名+t_+表义名”格式构成 Ø 整个表名的长度不要超过30 个字符 Ø 系统名、模块名均采用小写字符 Ø 模块名或表义名均以其汉语拼音的首字符命名,但常用词也可使用英文单词命名 (如 UserType、UserInfo 等),表义名中汉语拼音均采用小写,且字符间不加分割 符;单词命名的表表义名中单词的首字符大写,其它字符小写,多个单词间也不加 任何分割符,单词全部采用单数形式 Ø 表别名命名规则:取表义名的前3 个字符加最后一个字符。如果存在冲突,适当增 加字符(如取表义名的前4 个字符加最后一个字符等) Ø 表的命名如 dft_gy_cbap:系统名(电费 df)+t_+模块名(高压 gy)+_+表义名(抄表安排 cbap) dft_cbbj: 系统名(电费 df)+t_+表义名(抄表标记 cbbj) Ø 关联表命名为Re_表A_表B,Re 是Relative的缩写,表A 和表B均采用其表义名或 缩写形式。 3.4 属性(列或字段) 属性命名遵循以下原则: Ø 采用有意义的列名,为实际含义的汉语拼音的首字符,且字符间不加任何分割符。 Ø 属性名前不要加表名等作为前缀。 Ø 属性后不加任何类型标识作为后缀。 Ø 不要使用“ID”作为列名。 Ø 关联字段命名以 “cd+_+关联表的表义名(或缩写)+_+字段名”进行 第3/8页 3.5 主键 Ø 任何表都必须定义主键 Ø 表主键命名为:“pk+_+表名(或缩写)+_+主键标识” 如“pk_YHXX_IDKH”等 3.6 外键 表外键命名为: “fk+_+表名(或缩写)+_主表名(或缩写)+_+主键标识” 如“fk_YHLX_YHXX_idcard”等 3.7 索引 索引的命名为:“表名(或缩写)+_+列名+_idx”。 其中多单词组成的属性列列名取前几个单词首字符,加末单词组成 如yd_kh 表khid 上的index: yd_kh_khid_idx 3.8 Default 标识 由“df+_+<default 标识名>”组成 3.9 Rule 标识 由“ru+_+<Rule 标识名>”组成 3.10 自定义数据类型 自定义数据类型由“ud+_+<自定义数据类型标识>+_+<数据类型>”组成 3.11 触发器 Ø AFTER型触发器 系统名+tr_+<表名>_+<i,u,d的任意组合> 其中i,u,d 分别表示insert、update和delete Ø INSTEAD OF型触发器 第4/8页 系统名+ti_+<表名>+_+<i,u,d的任意组合> 其中i,u,d 分别表示insert、update和delete 3.12 视图 视图命名以系统名v_+模块名作为前缀,其他命名规则和表的命名类似 3.13 存储过程 存储过程命名由“系统名+sp+_+存储过程标识(缩写)”组成 存储过程标识要以实际含义的汉语拼音的首字符或以动宾形式构成,并用下划线分割各个 组成部分。 如增加代理商的帐户的存储过程为“sfsp_Ins_Agent_Account”。 3.14 函数 函数命名由“系统名+f+_+函数标识”组成 3.15 变量名 Ø 参数变量命名采用“i (o或io)+_+ 名称”形式,前缀i 或o 表输入还是输出参数 Ø 过程变量命名采用“l+_+ 名称”形式 Ø 变量名采用小写,若属于词组形式,用下划线分隔每个单词 3.16 角色 Ø 全部使用小写字符命名 Ø 由“系统名称+_+role+_+名词(或缩写)或名词短语(或缩写)”组成 如用电系统的查询角色:yd_role_query 3.17 用户 Ø 全部使用小写字符命名 Ø 由“系统名称+_+user+_+名词(或缩写)或名词短语(或缩写)”组成 如用电系统的管理用户:yd_user_sa 第5/8页 3.18 命名中的其它注意事项 Ø 命名都不得超过30 个字符。变量名长度不要超过29个字符(不包括标识字符@) Ø 不要在对象名的字符之间留空格 Ø 小心保留词,要保证你的字段名没有和保留词、数据库系统或者常用访问方法冲突 4、 编码规范 4.1 一般性注释 注释可以包含在批处理中。在触发器、存储过程中包含描述性注释将会大大增加文本 的可读性和可维护性。 4.1.1 注释尽可能详细、全面。 4.1.2 创建每一数据对象前,应具体描述该对象的功能和用途。 4.1.3 传入参数的含义应该有所说明。如果取值范围确定,也应该一并说明。取值有特定含义 的变量(如boolean类型变量),应给出每个值的含义。 4.1.4 注释语法包含两种情况:单行注释、多行注释 单行注释:注释前有两个连字符(--),最后以行尾序列(CR-LF)结束。一般,对变 量、条件子句可以采用该类注释。 多行注释:符号/*和*/之间的内容为注释内容。对某项完整的操作建议使用该类注释。 4.1.5 注释应当简洁,同时应描述清晰。 4.2 函数头注释 编写函数文本--如视图、函数、触发器、存储过程以及其他数据对象时,必须为每个 函数增加适当注释。该注释以多行注释为主,主要结构如下: /************************************************************************ *name : --函数名 *function : --函数功能 *input : --输入参数 *output : --输出参数 *author : --作者 第6/8页 *CreateDate : --创建时间 *UpdateDate : --函数更改信息(包括作者、时间、更改内容等) *************************************************************************/ CREATE PROCEDURE dfsp_xxx … 4.3 大小写约定 SQL语句的所有表名、字段名全部小写,系统保留字、内置函数名、sql 保留字大写。 4.4 代码缩进约定 4.4.1 一行有多列,超过80个字符时,基于列对齐原则,采用下行缩进 4.4.2 where 子句书写时,每个条件占一行,语句另起一行时,以保留字或者连接符开始,连 接符右对齐。 4.5 多表连接时,使用表的别名来引用列 4.6 常用SQL 语句的编写规范 常用SQL 语句的编写示例如下 4.6.1 CREATE 语句 CREATE TABLE publishers ( pub_id char(4) NOT NULL --标识 CONSTRAINT UPKCL_pubind PRIMARY KEY CLUSTERED CHECK (pub_id IN ('1389', '0736', '0877', '1622', '1756') OR pub_id LIKE '99[0-9][0-9]'), pub_name varchar(40) NULL, --名称 city varchar(20) NULL, --城市 state char(2) NULL, --州 country varchar(30) NULL --国家 DEFAULT('USA') ) 4.6.2 SELECT语句 SELECT <选择列列表> [ INTO <新表名> ] FROM <要选择的表名> 第7/8页 [ WHERE <搜索条件> ] [ GROUP BY <分组条件> ] [ HAVING <搜索条件> ] [ ORDER BY <排序规则> [ ASC | DESC ] ] 4.6.3 INSERT语句 INSERT INTO <要插入的表名> (<列1>, <列2>, .., <列n-1>, <列n>) VALUES (<列1值>, <列2值>, .., <列n-1值>, <列n值>) 4.6.4 UPDATE语句 UPDATE <要更新的表名> SET <要更新的列> = <列值> 4.6.5 DELETE语句 DELETE FROM authors WHERE au_lname = 'McBadden' 4.7 条件执行语句(IF)编写规范 条件执行语句IF…ELSE 按以下格式编写 IF <条件表达式> BEGIN <命令行或程序块> END [ELSE IF <条件表达式> BEGIN <命令行或程序块> END] 注:<1>上式若BEGIN…END 之间只包含单独一命令行,为使代码紧凑,BEGIN和END边界 也常省略 <2>IF…ELSE 语句可以嵌套,为提高代码的可读性,嵌套层次不应多于5 层。当嵌套 层次太多时应考虑使用CASE 语句。 4.8 条件选择语句(CASE)编写规范 条件选择语句CASE…WHEN 按以下格式编写 CASE <运算式> WHEN <运算式> THEN <运算式> … 第8/8页 WHEN <运算式> THEN <运算式> [ELSE <运算式>] END 或 CASE WHEN <条件表达式> THEN <运算式> … WHEN <条件表达式> THEN <运算式> [ELSE <运算式>] END 4.9 循环执行语句(WHILE)编写规范 循环执行语句WHILE…CONTINUE…BREAK按以下格式编写 WHILE <条件表达式> BEGIN <命令行或程序块> [BREAK] [CONTINUE] … <命令行或程序块> END |
相关推荐
SQL SERVER数据库命名编码规范.pdf
编写本文档的目的是在使用MS SQL Server数据库的过程中,使用统一的命名和编码规范,使数据库命名及编码风格标准化,以便于阅读、理解和继承。
SQL Server 数据库 设计 命名 编码 规范 word档
4 设计概要 4.1 设计环境 a) ORACLE 11G R2 数据库 ORACLE 11G R2 操作系统 LINUX 6以上版本,显示图形操作界面 b) MS SQL SERVER 2005 数据库设计规范-编码规范全文共25页,当前为第2页。数据库设计规范-编码规范...
附录 2 SQL Server 数据库命名与编码规范 一.数据库对象命名基本规范 1. 总体命名规范 名称的长度不超过 32 个字符。 名称采用英文单词、英文单词缩写和数字,单词之间用"_"分隔。 说明:除非用户提供文档化的行业...
SQL Sever的编码规范说明文档 数据库对象命名基本规范 Transact-SQL编程基本规范
SQL Server Express 可以根据协议重新进行发布,并可作为客户端数据库以及基本服务器数据库使用。SQL Server Express 是独立软件供应商 (ISV)、服务器用户、非专业开发人员、Web 应用程序开发人员、网站宿主以及...
MySQL入门学习(一)安装篇.doc SQL Server 设计、命名、编码规范.doc SQL Server数据库开发的二十一条军规.doc SQL操作全集+.doc SQL优化34条.doc
数据库的命名:全部由英文小写字母组成,单词之间使用下划线分割 如:PSS进销存系统后台数据库命名:pss。 2. 数据库表命名:表义名(可以使用缩写) 表义名:首字母大写的英文单词,单词之间以下划线分割。 3. 数据库...
本文档的主要读者包括: 本系统的设计人员:包括模块设计人员 本系统的系统设计人员:包括数据库开发,编码人员 本系统的测试人员 数据库环境说明 数据库采用Micrsoft SQL Server数据库管理系统建立并维护。...
内容提要 <br> 本书系统地介绍了ASP.NET程序设计开发,全书案例程序使用C#编写,并遵守C#的编码规范。所有案例程序均来自课堂教学和工程实践,注重知识的兼容性和规范性。 依照ASP.NET编程体系,本书...
数据库命名标准与规范 2.4.3.2 逻辑设计 2.4.3.3 物理数据库的设计 表、视图汇总 各表、视图设计详解 2.4.4 界面设计 2.4.4.1 输入界面设计 1界面设计思想 2界面设计原则 3界面设计样式 4常见提示信息样式 5常见...
遵循程序设计编码规范,标识符应命名规范、代码注释充分、排版风格良好;要求系统具有良好的安全性,能有效防止非法登录用户访问需授权网页;系统具有良好的人机交互界面,界面应布局清晰、简洁大方;
设计时的自动化加快了编码,并保证所有过程都用相同的命名规范和结构来生成。为了在大型 SQL 项目中尽量提高编码的效率,作者编写了一系列的设计时 (design-time)存储过程,用它们来生成运行时(run-time)存储...
5. 遵循程序设计编码规范,标识符应命名规范、代码注释充分、排版风格良好; 6. 使用JS对表单提交的数据及格式进行校验(是否为空、是否为数字等等) 7. 要求系统具有良好的安全性,能有效防止非法登录用户访问需...
数据仓库建模技术.pdf 在数据库中实现base64编码和解码.doc 触发器使用教程和命名规范.doc TransactSQL.doc Schema常用脚本.doc rsultset.doc oracle傻瓜手册 ORACLE 中存储过程定期分割表.doc ORACLE 物理文件大小...
Oracle编程的编码规范及命名规则 Oracle数据库字典介绍 0RACLE的字段类型 事务 CMT DEMO(容器管理事务演示) 事务隔离性的一些基础知识 在组件之间实现事务和异步提交事务(NET2.0) 其它 在.NET访问MySql数据库时的...
参考A:采用B/S模式设计,利用ASP.NET作为前台的应用程序开发语言,利用SQL Server创建后台的数据库,Visual Studio 2010的开发环境下进行开发。 可能Q:论文中如何体现软件生命周期?系统从设计到实现经历了哪些...
xml Mysql Oracle SqlServer int int NUMBER smallint int(1) smallint(1) NUMBER(2) int memo text CLOB text datetime datetime TIMESTAMP datetime long bigint NUMBER bigint decimal decimal NUMBER(20,2) ...