解读ORACLE数据库的统一命名与编码规范
1、编写目的
使用统一的命名和编码规范,使数据库命名及编码风格标准化,以便于阅读、理解和继承。
2、适用范围
本规范适用于公司范围内所有以ORACLE作为后台数据库的应用系统和项目开发工作。
3、对象命名规范
3.1 数据库和SID
数据库名定义为系统名+模块名
★ 全局数据库名和例程SID 名要求一致
★ 因SID 名只能包含字符和数字,所以全局数据库名和SID 名中不能含有“_”等字符
3.2 表相关
3.2.1 表空间
★ 面向用户的专用数据表空间以用户名+_+data命名 ,如Aud 用户专用数据表空间可命名为Aud_data
★ 面向用户的专用索引表空间以用户名+_+idx命名
★ 面向用户的专用临时表空间以用户名+_+tmp命名
★ 面向用户的专用回滚段表空间以用户名+_+rbs 命名
★ 面向应用的表空间以应用名+_data/应用名+_idx/应用名+_tmp/应用名+_rbs 命名
★ LOB 段数据专用表空间以其数据表空间+_+lobs 命名,如上例中数据表空间为Aud_data,则LOB 段表空间可命名为Aud_data_lobs
3.2.2 表空间文件
表空间文件命名以表空间名+两位数序号(序号从01开始)组成,如Aud_data01 等
3.2.3 表
表命名要遵循以下原则:
★ 一般表采用“系统名+t_+模块名+_+表义名” 格式构成
★ 若数据库中只含有单个模块,命名可采用“系统名+t_+表义名”格式构成
★ 模块名或表义名均以其汉语拼音的首字符命名,表义名中汉语拼音均采用小写,且字符间不加分割符;
★ 表别名命名规则:取表义名的前3 个字符加最后一个字符。如果存在冲突,适当增加字符(如取表义名的前4 个字符加最后一个字符等)
★ 临时表采用“系统名+t_tmp_+表义名” 格式构成
★ 表的命名如
dft_gy_cbap:系统名(电费 df)+t_+模块名(高压 gy)+_+表义名(抄表安排 cbap)
dft_cbbj: 系统名(电费 df)+t_+表义名(抄表标记 cbbj)
dft_tmp_hj: 系统名(电费 df)+tmp+表义名(合计hj)(此处为临时表)
★ 关联表命名为Re_表A_表B,Re 是Relative的缩写,表A 和表B均采用其表义名或缩写形式。
3.2.4 属性(列或字段)
属性命名遵循以下原则:
★ 采用有意义的列名,为实际含义的汉语拼音的首字符,且字符间不加任何分割符
★ 属性名前不要加表名等作为前缀
★ 属性后不加任何类型标识作为后缀
★ 不要使用“ID”作为列名
★ 关联字段命名以 “cd+_+关联表的表义名(或缩写)+_+字段名”进行
3.2.5 主键
★ 任何表都必须定义主键
★ 表主键命名为:“pk+_+表名(或缩写)+_+主键标识”如“pk_YHXX_IDKH”等
3.2.6 外键
表外键命名为: “fk+_+表名(或缩写)+_主表名(或缩写)+_+主键标识”如“fk_YHLX_YHXX_SFZH”等
3.2.7 CHECK约束
CHECK 约束命名为: “chk+_+CHECK约束的列名(或缩写)”
3.2.8 UNIQUE约束
UNIQUE 约束命名为: “unq+_+UNIQUE约束的列名(或缩写)”
3.2.9 索引
索引的命名为:“表名(或缩写)+_+列名+_idx”。其中多单词组成的属性列列名取前几个单词首字符再加末单词首字符组成如yd_kh 表khid 上的index: yd_kh_khid_idx
3.2.10 触发器
★ AFTER型触发器
系统名+tr_+<表名>_+ +[_row]
★ BEFORE型触发器
系统名+tr_+<表名>_+bef_+[_row]
★ INSTEAD OF型触发器
系统名+ti_+<表名>+_++[_row]
★ 各种类型的触发器中
相关新闻>>
- 发表评论
-
- 最新评论 更多>>