惯例广告一发,对于初学真,真的很有用www.java1234.com,去试试吧!

数据库命名规范

1 目的

规范数据库各种对象的命名规则。

2 数据库命名原则

2.1 数据文件

如果数据库采用文件系统,而不是裸设备,约定下列命名规则:

1)数据文件以表空间名为开始,以.dbf为结尾,全部采用小写英文字母加数字命名。如该表空间有多个数据文件,则从第2个数据文件开始,在表空间名后加_。

例:对system表空间的数据文件:system.dbf,system_2.dbf

2)对oracle数据库的控制文件,用control.ctl来表示。如control01.ctl,control02.ctl。

3)对oracle数据库的日志文件,在线日志文件用redo<组名><文件序列名>.dbf来表示。其中组名和文件序列名均用2位数字来表示。如第一组的两个文件表示位redo0101.dbf和redo0102.dbf。归档日志用arch_%t_%s.arc来表示。其中%t和%s均为oracle约定的变量。

2.2 表空间

2.2.1 数据库系统表空间

数据库系统表空间包括system表空间,临时表空间,回滚段的表空间。约定下列命名规则:

1)system表空间由数据库直接限定,不能进行修改。

2)临时表空间用temp来表示。如果有多个临时表空间,从第2个临时表空间开始,在temp后面加来表示。

3)回滚段表空间用undotbs来表示。如果有多个回滚段表空间,从第2个回滚段表空间开始,在undotbs后面加来表示。

2.2.2 数据库的用户表空间

数据库的用户表空间用ts_<表空间名>来表示。其中,表空间名分为:

1)数据空间:对于用户的缺省表空间,用default来表示。对于其他的表空间,根据存放在表空间上的表的类别来表示。如放代码的表,用code来表示。放客户资料的表,用customer来表示。尽量用一个表空间来存放该类的表。如果某表特别大,可考虑单独使用一个表空间。

2)索引空间:在相应的数据表空间的名字前加ind_。如对用户缺省表空间的索引空间,用ts_ind_default来表示。对代码表的索引表空间,用ts_ind_code来表示。

2.3 表

数据库表的命名采用如下规则:

1)表名用T_开头,表名长度不能超过30个字符,表名中含有单词全部采用单数形式,单词要大写。

2)多个单词间用下划线(_)进行连接。若库中有多个系统,表名采用系统名称+单词或多个单词,系统名是开发系统的缩写,如VNET。

3)表中含有的单词建议用完整的单词。如果导致表名长度超过30个字符,则从最后一个单词开始,依次向前采用该单词的缩写。(如果没有约定的缩写,则采用该单词前4个字母来表示)。

数据库表的字段命名采用如下规则:

1)数据库字段名全部采用小写英文单词,单词之间用”_”隔开。字段长度不能超过30个字符。

2)如果该字段是代码,则在单词后加_id。

3)如果该字段表示的是时间,则使用_time为后缀。

2.4 视图

数据库视图的命名采用如下规则:

1)视图名用V_开头,视图名长度不能超过30个字符。视图名用大写的英文单词来表示。

2)视图由几个表产生就用下划线(_)连接几个表的名,如果表过多可以将表名适当简化,但一定要列出所有表名。

2.5 序列

数据库序列的命名采用如下规则:

序列名用seq_开头,后面跟使用该序列的字段名。如果有几个字段用同一个序列,用下划线(_)连接几个字段的名称。如果不同表中相同的字段名需要使用不同的序列,则在字段名后加表的特征,用下划线(_)连接。序列名长度不能超过30个字符。序列名用小写的英文单词来表示。

2.6 存储过程

存储过程的命名采用如下规则:

存储过程名用Pr_开头,存储过程名长度不能超过30个字符。存储过程名用小写的英文单词来表示。

2.7 函数

函数的命名采用如下规则:

函数名用Fu_开头,函数名长度不能超过30个字符。函数名用小写的英文单词来表示。

2.8 触发器

触发器的命名采用如下规则:

触发器名用Tr_开头,触发器名长度不能超过30个字符。触发器名用小写的英文单词来表示。

2.9 主键

主键的命名采用如下规则:

主键名用pk_开头,后面跟该主键所在的表名。主键名长度不能超过30个字符。如果过长,可对表名进行缩写。缩写规则同表名的缩写规则。主键名用小写的英文单词来表示。

2.10 外键

外键的命名采用如下规则:

外键名用fk_开头,后面跟该外键所在的表名和对应的主表名(不含t_)。子表名和父表名自己用下划线(_)分隔。外键名长度不能超过30个字符。如果过长,可对表名进行缩写。缩写规则同表名的缩写规则。外键名用小写的英文单词来表示。

2.11 索引

索引的命名采用如下规则:

1)索引名用小写的英文字母和数字表示。索引名的长度不能超过30个字符。

2)主键对应的索引和主键同名。

3)每类索引都用_结束。

4)唯一性索引用uni_开头,后面跟表名。一般性索引用ind_开头,后面跟表名。

5)如果索引长度过长,可对表名进行缩写。缩写规则同表名的缩写规则。

详细出处参考:http://www.jb51.net/article/17534.htm

转载于:https://www.cnblogs.com/hualidezhuanshen/archive/2013/06/15/3137690.html

数据库命名规范(转)相关推荐

  1. 什么是oracle命名,ORACLE数据库命名规范

    ORACLE数据库命名规范 1 目的 规范数据库各种对象的命名规则. 2 数据库命名原则 2.1 数据文件 如果数据库采用文件系统,而不是裸设备,约定下列命名规则: 1)数据文件以表空间名为开始,以. ...

  2. mysql中对象标识符的命名规则,标准规范数据库命名规范.doc

    标准规范数据库命名规范 数据库命名规范 概述 基本原则 以大小写敏感编写SQL语句. 尽量使用Unicode 数据类型. 优先使用连接代替子查询或嵌套查询. 尽量使用参数化SQL查询代替语句拼接SQL ...

  3. 数据库建表原则,SQL数据库建表前期优化,SQL数据库操作优化,数据库命名规范...

    2019独角兽企业重金招聘Python工程师标准>>> 关键字: 数据库建表原则 ·1. 原始单据与实体之间的关系 可以是一对一.一对多.多对多的关系.在一般情况下,它们是一对一的关 ...

  4. mysql的库命名规范_数据库命名规范(命名规则)

    数据库命名规范 引言:数据库设计过程中库.表.字段等的命名规范也算是设计规范的一部分,不过设计规范更多的是为了确保数据库设计的合理性.为了项目最终的协调稳定性,而命名规范更多的是为了确保设计的正式和统 ...

  5. 数据库命名规范--通用

    数据库命名规范--通用 分段式的 1.1 基本命名原则 以下基本原则适用于所有数据库对象命名,如无特别说明则为强制规范. Ø规范:遵循行业规范 当有相关国家/行业强制性数据结构标准规范存在时,用于存储 ...

  6. mysql数据库命名规范

    文档摘抄来自:https://blog.csdn.net/chl191623691/article/details/78247497/ 本人经验:不要出现短横线等等其他字符!! 1. 数据库涉及字符规 ...

  7. 数据库 - 命名规范

    https://www.cnblogs.com/pangguoming/p/7126512.html 摘要:当前研发工作中经常出现因数据库表.数据库表字段格式不规则而影响开发进度的问题,在后续开发使用 ...

  8. MySQL数据库命名规范及约定

    一.[操作规范] 1. 如无备注,则表中的第一个id字段一定是主键且为自动增长: 2. 如无备注,则数值类型的字段请使用UNSIGNED属性: 3. 如无备注,排序字段order_id在程序中默认使用 ...

  9. Oracle数据库命名规范

    1.1约定 u  数据库的schema,数据库对象如表.字段.索引.序列.存储过程等的命名约定: u  命名使用富有意义的大写英文词汇,尽量避免使用缩写,多个单词组成的,中间以下划线分割: u  各表 ...

最新文章

  1. CSS超出部分隐藏,显示滚动条
  2. JAVA RPC:从上手到爱不释手
  3. 【自动驾驶】24.欧拉角、旋转向量、四元数、万向锁
  4. LeetCode:Minimum Path Sum(网格最大路径和)
  5. apache性能优化
  6. 1小时教你学会正则表达式
  7. 使用tSQLt进行测试驱动的数据仓库开发(TDWD)
  8. poj1068Parencodings
  9. Python数据结构与算法笔记(七):数据结构——队列,链表和哈希表
  10. 大数据在消防安全中的新应用
  11. scare机器人如何手眼标定_SCARA机器人手眼标定之目标抓取
  12. java 前后端分离_到底什么是前后端分离?
  13. 学计算机的 1加1,如何用“一加一等于几”解析人生
  14. 一文帮你理解 Google SRE 体系
  15. 每日新闻:6G概念研究今年启动;德国SAP斥80亿美元收购美国Qualtrics;华为发布人工智能平台;微软收购两家游戏工作室...
  16. 【手绘漫画】面试必考之图解逆转单链表/单链表逆序
  17. JAVA 通过属性名称 获取属性值、设置属性值
  18. wish平台入驻需要押金吗?
  19. JS: prompt() 输入框 confim()确认框 alert() 提示框
  20. libuv 源码分析 —— 1.queue

热门文章

  1. 单个下拉框数据保持问题
  2. Android中的Broadcast Action大全
  3. DB2数据库性能调整和优化(第2版)
  4. 中国企业云计算应用现状及需求
  5. (转)elasticsearch6.0版本安装head插件
  6. 软考解析:2015年上半年下午试卷
  7. 写了这么久前端,你知道浏览器原理吗?
  8. 虚拟机安装以及PCL的配置(1)
  9. 生理周期,POJ(1006)
  10. c#中无法将类型“int”隐式转换为“System.IntPtr”