设为首页 收藏本站
查看: 618|回复: 0

[经验分享] ORACLE数据库命名规范(转)

[复制链接]

尚未签到

发表于 2016-7-28 09:39:56 | 显示全部楼层 |阅读模式

  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)如果索引长度过长,可对表名进行缩写。缩写规则同表名的缩写规则。
   
  没有统一的规定,按个人习惯来选择...

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-250498-1-1.html 上篇帖子: Oracle and JSON: Using PL/JSON 下篇帖子: 创建oracle时的常用命令
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表