数据库设计命名规范

上传人:hs****ma 文档编号:431302923 上传时间:2022-11-28 格式:DOC 页数:3 大小:29.01KB
返回 下载 相关 举报
数据库设计命名规范_第1页
第1页 / 共3页
数据库设计命名规范_第2页
第2页 / 共3页
数据库设计命名规范_第3页
第3页 / 共3页
亲,该文档总共3页,全部预览完了,如果喜欢就下载吧!
资源描述

《数据库设计命名规范》由会员分享,可在线阅读,更多相关《数据库设计命名规范(3页珍藏版)》请在金锄头文库上搜索。

1、数据库设计命名规范1.数据库涉及字符规范采用26个英文字母和09这十个自然数,加上下划线_组成,共36个字符。不出现其他字符。鉴于大小写规则难记忆,而且有些情况下,数据库不区分大小写,统一采用小写字母。采用英文单词或英文短语(包括缩写)作为名称,不使用无意义的字符或汉语拼音。名称应该清晰明了,能够准确表达事物的含义,最好可读,遵循“见名知意”的原则。2.数据库对象命名规范数据库对象包括表、视图(查询)、存储过程(参数查询)、函数、约束。对象名字由前缀和实际名字组成,绝对不要在对象名的字符之间留空格,长度不超过30。使用单数(比如表名tb_customer,不要使用tb_customers)。前

2、缀:使用小写字母表 tb_ 视图 vi存储过程 sp函数 fn索引idx_主键pk_外键fk_序列 seq实际名字:实际名字尽量描述实体的内容,由单词或单词组合,每个单词以_间隔,字母小写,不以数字开头。合法的对象名字类似如下。表 tb_user_info tb_message_detail视图 vi_message_list存储过程 sp_message_add3.数据库表设计规范表名由前缀和实际名字组成。tb_。表的设计要符合3NF,然后,可以根据效率的需要,适当做一些冗余。前缀:使用小写字母tb,代表表。实际名字中,一个系统尽量采取同一单词,多个后面加_来连接区分。 合法的表名类似如下。

3、tb_membertb_member_infotb_forum_boardtb_blog_comment1一些作为多对多连接的表,可以使用两个表的前缀作为表名: 如:用户表tb_user,用户分组表tb_group_info,这两个表建立多对多关系的表名为:tb_user_group_relation4.字段命名规范字段由表的简称,实际名字组组成。如果此字段关联另外的字段,那么加下划线_连接关联表字段的字段名。布尔型的字段,以一些助动词开头,更加直接生动:如,用户是否有留言has_message,用户是否通过检查is_checked等。字段名为英文短语、形容词+名词或助动词+动词时态的形式表示

4、,遵循“见名知意”的原则。因此,合法的字段名类似如下。user_iduser_nameuser_reg_date 5.视图命名规范由前缀和实际名字组成,中间用下划线连接。前缀:使用小写字母vi,表示视图。合法的视图名类似如下。vi_uservi_user_info6.存储过程命名规范字段由前缀和实际名字加操作名字组成,中间用下划线连接。前缀:使用小写字母sp,表示存储过程。操作名字:insert|delelte|update|caculate|confirm例如:sp_user_insert存储过程注释尽量采用英文:/* Name: sp_user_add* Purpose: Add a us

5、er to system* Parameters: strUserName the users login name* strPwd the users password, encrypted by MD5* errno the error number, its a “output” param* errmsg the error message, its a “output” param* Returns: the users ID, as a result set.* Copyright: CopyRights By wance 2005.All Rights Reserved.* Cr

6、eate At: 2009-03-18 Last Modify: 2009-03-19*/7.数据库设计文档规范所有数据库设计要写成文档,附有表关系图,可采用PowerDesigner设计; 表的具体描述文档以模块化形式表达。大致格式如下:表名:tb_department日期: 2008-12-17版本: 1.0描述:保存用户资料主键:dept_id索引:idx_dept_name, unique(唯一索引)外键:manager_id(对应tb_employee.employee_id)具体内容样例字段名数据类型可为空默认值备注dept_idint(4)否无主键,自增长(如果是ORACLE要指

7、定序列对象名)namevarchar(50)否无表示该部门的名称,部门名称不重复manager_idint(4)是0外键,引出员工表,表示部门经理addressvarchar(100)是无表示部门地址phonevarchar(50)是空串 表示部门的电话faxvarchar(50)否无表示部门的传真predept_idint(4)否0表示上级部门的ID号dutyvarchar(100)是无表示部门的职能sort_numberint(4)是无表示部门排序号8.sql语句规范所有sql关键词全部大写,比如SELECT,UPDATE,FROM,ORDER,GROUP BY等。9.数据完整性规范1、为

8、便于在程序的编码期查错,可以在设计数据库的时候尽可能多的加上约束(check)。如,整型的字段的取值范围等,常常为field0。2、同理,尽可能地在开发期间使用触发器来验证数据的完整性。3、如果字段之间存在冗余,应该编写触发器来管理冗余的字段3、在开发阶段保存完整的主键、外键和唯一索引的约束。4、原则:编码期间,数据完整性优先于性能。在保障系统正确运行的前提下尽可能的提高效率。5、数据库分开发期和运行期两个版本:开发期版本主要体现完整的约束,运行期版本体现效率的优化。10.数据库性能优化规范(运行期)1、在运行阶段删除不必要的约束(check)。2、尽量不要使用触发器3、尽量保留主键约束4、适当删除外键,以提高性能5、在运行期间,通过分析系统的访问量,创建索引来优化性能6、分析每个表可能的数据增长量,定义自动拆分表规则。将大表进行拆分来提高性能。7、预先考虑数据清理规则:在什么情况下删除数据库中的旧数据,以此来提高性能。8、制定数据库备份和灾难恢复计划。9、为效率考虑,可以在系统测试阶段适当增加冗余字段,或者冗余表。10、分页的记录输出建议通过存储过程来实现,不能使用API游标来分页,这样可以提高分页的效率。

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

当前位置:首页 > 办公文档 > 模板/表格 > 财务表格

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