ORACLE数据库命名编码规范

ORACLE数据库命名编码规范


版本记录:

文件状态:

[  ] 草稿

[√] 正式发布

[  ] 正在修改

当前版本:

1.0

作    者:

 

完成日期:

2013-06-26

签 收 人

 

签收日期

 


  1. 编写目的

使用统一的命名和编码规范,使数据库命名及编码风格标准化,以便于阅读、理解和继承。

  1. 适用范围

本规范适用于公司范围内所有以ORACLE作为后台数据库的应用系统和项目开发工作。

  1. 对象命名规范
    1. 数据库和SID

数据库名定义为系统名+模块名

  • 全局数据库名和例程SID名要求一致
  • 因SID名只能包含字符和数字,所以全局数据库名和SID名中不能含有“_”等字符
    1. 表相关
      1. 表空间
  • 面向用户的专用数据表空间以TBS+用户名命名 ,如POSP用户专用数据表空间可命名为TBS_POSP
  • 面向用户的专用索引表空间以TBS+用户名+_+IDX命名,例如TBS_POSP_IDX
  • 面向用户的专用临时表空间以TBS+用户名+_+TMP命名例如:TBS_POSP_TMP
      1. 表空间文件

表空间文件命名采用ORACLE管理的命名规范。

表命名要遵循以下原则:

  • 表的命名如:

1、必须以字母开始。
2、长度不能超过30个单字节字符。
3、只能包括A-Z,a-z,0-9,_,$和#。
4、不能在相同用户下建立两个同名的对象。

  • 一般表采用“T_+模块名+_+表义名” 格式构成,总长度不能超过30。例如:T_POSP_HPSTJNL
  • 模块名采用公司内部自定义名称;例如POSP、UI、OA
  • 表别名命名规则:取表义名的前3个字符加最后一个字符。如果存在冲突,适当增加字符(如取表义名的前4个字符加最后一个字符等)
  • 临时表采用“T_+模块名+表义名+_+TMP” 格式构成,例如:T_POSP_HPSTJNL_TMP
      1. 属性(列或字段)

属性命名遵循以下原则:

  • 采用有意义的列名
  • 属性名前不要加表名等作为前缀
  • 属性后不加任何类型标识作为后缀
  • 不要直接使用“ID”作为列名
      1. 主键
  • 任何表都必须定义主键
  • 表主键命名为:“PK+_+表名”,例如:PK_T_POSP_HPSTJNL
      1. 外键

表外键命名为: “FK+_+表名”,例如:FK_T_POSP_HPSTJNL

      1. CHECK约束

CHECK约束命名为: “CK+_+表名”,例如:CK _T_POSP_HPSTJNL

      1. UNIQUE约束

UNIQUE约束命名为: “UK+_+表名”,例如:UK _T_POSP_HPSTJNL_CK

      1. 索引

索引的命名为:“idx+表名(或缩写)+_+列名(或缩写)”,总长度不能超过30。

其中多单词组成的属性列列名取前几个单词首字符再加末单词首字符组成,例如:

IDX _T_POSP_HPSTJNL_AC_DT

      1. 触发器
  • AFTER触发器

系统名+tr_+<表名>_+<i,u,d的任意组合> +[_row]

  • BEFORE触发器

系统名+tr_+<表名>_+bef_<i,u,d的任意组合>+[_row]

  • INSTEAD OF触发器

系统名+ti_+<表名>+_+<i,u,d的任意组合>+[_row]

  • 各种类型的触发器中

i,u,d分别表示insert、update和delete

行级触发器,后加_row标识,语句级触发器不加,如 yddftr_CSH_i_row

    1. 视图

视图命名以v_+模块名+_+视图义名作为前缀,其他命名规则和表的命名类似,例如:V_POSP_HPSTVU

    1. 序列

序列命名以SEQ+_+模块名+含义名组成,例如:SEQ_POSP_HPSTJNL,精度不超过20位。

    1. 同义词

同义词命名与其基础对象的名称一致,但要去除其用户前缀含有远程数据库链接的后缀

    1. 存储对象相关
      1. 存储过程

存储过程命名由“pro+_+模块名+_+存储过程标识(缩写)”组成,例如:POSP_GAOJING_PRO

      1. 函数

函数命名由“f+模块名+_+函数标识”组成,例如:F_POSP_HPCASE

包命名由“pkg+模块名+_+包标识”组成,例如:POSP_PGAOJING_PKG

      1. 函数文本中的变量采用下列格式命名:
  • 参数变量命名采用“i (o或io)+_+名称”形式,前缀i或o表输入还是输出参数
  • 过程变量命名采用“l+_+名称”形式
  • 全局包变量命名采用“g+_+名称”形式
  • 游标变量命名采用“名称+_+cur”形式
  • 常量型变量命名采用“v+_+名称”形式
  • 变量名采用小写,若属于词组形式,用下划线分隔每个单词
  • 变量用来存放表中的列或行数据值时,使用%TYPE、%ROWTYPE方式声明变量,使变量声明的类型与表中的保持同步,随表的变化而变化
    1. 用户及角色
  • 用户命名由“系统名称+_+user+_+名词(或缩写)或名词短语(或缩写)”组成
  • 角色命名由“系统名称+_+role+_+名词(或缩写)或名词短语(或缩写)”组成
    1. 数据库链接
    • 数据库链接命名由“远程服务器名+_+数据库名+_+link”组成
    • 若远程服务器名和数据库名一致,上式“_+数据库名”部分省去
    1. 命名中的其它注意事项
  • 命名都不得超过30个字符
  • 不要在对象名的字符之间留空格
  • 小心保留词,要保证你的命名没有和保留词、数据库系统或者常用访问方法冲突。
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值