oracle数据库命名规范
Oracle数据库命名规范

1.Oracle数据库命名规范数据库命名规范总体上以“汉语拼音和常见英语单词相结合”的方式,汉语拼音即是采用每一个汉字拼音的第一个字母的方式。
英语单词采用整个英文单词或可以识别的英文单词缩写的方式。
数据库字段命名原则总统上同数据库命名,采用“汉语拼音和常见英语单词相结合”方式命名。
这里单独出来主要是强调本系统字段命名需要额外遵循如下规则:1)字段名称的唯一性:即同一含义的字段在整个系统范围内中必须有相同的字段名。
不能有类似一个表中的备注字段用“BeiZhu”,另一表中的备注却用“Remark”、“Desc”、“XXRemark”等。
2)字段含义唯一性:即系统同一字段名称必须有同一含义。
不能有类似“Name”在一个表中表单位名称,在另外一个表中表项目名称,这种情况需要加前缀区分。
3)所有字段名不能以SM开头,目的是避免与SuperMap保留字段前缀混淆4)空间表中:字段顺序以空间信息字段在前,属性信息字段在后原则。
5)属性表中:字段顺序以主次顺序设计,用于空间定位的字段放在最后原则。
1.1表属性规范1)表名前缀为Tbl_。
数据表名称必须以有特征含义的单词或缩写组成,中间可以用“_”分割,例如:tbl_pstn_detail。
表名称不能用双引号包含。
2)表分区名前缀为p。
分区名必须有特定含义的单词或字串。
例如:tbl_pstn_detail的分区p2004100101表示该分区存储2004100101时段的数据。
3)字段名字段名称必须用字母开头,采用有特征含义的单词或缩写,不能用双引号包含。
4)主键名前缀为PK_。
主键名称应是前缀+表名+构成的字段名。
如果复合主键的构成字段较多,则只包含第一个字段。
表名可以去掉前缀。
5)外键名前缀为FK_。
外键名称应是前缀+外键表名+主键表名+外键表构成的字段名。
表名可以去掉前缀。
1.2索引1)普通索引前缀为IDX_。
索引名称应是前缀+表名+构成的字段名。
如果复合索引的构成字段较多,则只包含第一个字段,并添加序号。
数据库命名规范

数据库命名规范1 目的规范数据库各种对象的命名规则。
2 数据库命名原则2.1 数据文件如果数据库采用文件系统,而不是裸设备,约定下列命名规则:1)数据文件以表空间名为开始,以.dbf为结尾,全部采用小写英文字母加数字命名。
如该表空间有多个数据文件,则从第2个数据文件开始,在表空间名后加_。
例:对system表空间的数据文件:system.dbf,system_2.dbf2)对oracle数据库的控制文件,用control.ctl来表示。
如control01.ctl,control02.ctl。
3)对oracle数据库的日志文件,在线日志文件用redo<组名><文件序列名>.dbf来表示。
其中组名和文件序列名均用2位数字来表示。
如第一组的两个文件表示位redo0101.dbf和re do0102.dbf。
归档日志用arch_%t_%s.arc来表示。
其中%t和%s均为oracle约定的变量。
2.2 表空间2.2.1 数据库系统表空间数据库系统表空间包括system表空间,临时表空间,回滚段的表空间。
约定下列命名规则:1)system表空间由数据库直接限定,不能进行修改。
2)临时表空间用temp来表示。
如果有多个临时表空间,从第2个临时表空间开始,在tem p后面加来表示。
3)回滚段表空间用undotbs来表示。
如果有多个回滚段表空间,从第2个回滚段表空间开始,在undotbs后面加来表示。
2.2.2 数据库的用户表空间数据库的用户表空间用ts_<表空间名>来表示。
其中,表空间名分为:1)数据空间:对于用户的缺省表空间,用default来表示。
对于其他的表空间,根据存放在表空间上的表的类别来表示。
如放代码的表,用code来表示。
放客户资料的表,用custo mer来表示。
尽量用一个表空间来存放该类的表。
如果某表特别大,可考虑单独使用一个表空间。
2)索引空间:在相应的数据表空间的名字前加ind_。
Oracle数据库设计规范建议

Oracle数据库1 数据对象的命名规范1.1 通用规范1.1.1 使用英文:要用简单明了的英文单词,不要用拼音,特别是拼音缩写。
主要目的很明确,让人容易明白这个对象是做什么用的;1.1.2 一律大写,特别是表名:有些数据库,表的命名乃至其他数据对象的命名是大小写敏感的,为了避免不必要的麻烦,并且尊重通常的习惯,最好一律用大写;1.2 数据库对象命名规范1.2.1 表的命名1.2.1.1 表名的前缀:前缀_表名_T。
为表的名称增加一个或者多个前缀,前缀名不要太长,可以用缩写,最好用下划线与后面的单词分开;其目的有这样几个:1.2.1.1.1 为了不与其他项目或者其他系统、子系统的表重名;1.2.1.1.2 表示某种从属关系,比如表明是属于某个子系统、某个模块或者某个项目等等。
表示这种从属关系的一个主要目的是,从表名能够大概知道如何去找相关的人员。
比如以子系统为前缀的,当看到这个表的时候,就知道有问题可以去找该子系统的开发和使用人员;1.2.2 视图命名:相关表名_V(或者根据需要另取名字);1.2.3 程序包命名:程序包名_PKG(用英文表达程序包意义);1.2.4 存储过程命名:存储过程名_PRO(用英文表达存储过程意义);1.2.5 函数命名:函数名称_FUN(用英文表达函数作用);1.2.6 触发器命名:触发器名称_TRI(用英文表达触发器作用);1.2.7 索引命名:表名_字段名_IDX(如果存在多字段索引,取每字段前三个字符加下划线组合,如在 custom, cutting, curtail 上建立联合索引,命名为表名_cus_cut_cur_IDX,如果前三个截取字符相同,就从字段名称中不同的字符开始取三个字符加下划线组合,如在 custid, custom,custname上建立联合索引,就命名为表_tid_tom_tna_IDX;1.2.8 唯一索引命名:表名_字段名_UNI(如果存在多字段唯一索引,取每字段前三个字符加下划线组合,如在 custom, cutting, curtail上建立唯一索引,命名为表名_ cus_cut_cur_UNI,如果前三个截取字符相同,就从字段名称中不同的字符开始取三个字符加下划线组合,如:在 custid, custom,custname上建立唯一索引,命名:表_tid_tom_tna_UNI;1.2.9 主键命名:表名_字段名_PK(如果存在多字段主键,取每字段前三个字符加下划线组合,如在 custom, cutting, curtail上建立主键,命名为表名_cus_cut_cur_PK,如果前三个截取字符相同,就从字段名称中不同的字符开始取三个字符加下划线组合,如在 custid, custom,custname上建立主键,命名:表_tid_tom_tna_PK;1.2.10 外键命名:表名_主表名_字段名_FK;1.2.11 Sequence命名:表名_列名_SEQ(或者根据需要另取名字);1.2.12 Synonym命名:与对应的数据库对象同名;1.2.12 JAVA命名:遵守公司相应的JAVA命名规范;2 SQL的设计和使用2.1 Sql 书写规范2.1.1 尽量不要写复杂的SQL:过于复杂的S QL可以用存储过程或函数来代替,效率更高;甚至如果能保证不造成瓶颈的话,把条SQL拆成多条也是可以的。
ORACLE数据库设计规范

1命名原则1.1约定ü是指对数据库、数据库对象如表、字段、索引、序列、存储过程等的命名约定;ü命名使用富有意义的英文词汇,尽量避免使用缩写,多个单词组成的,中间以下划线分割ü避免使用Oracle的保留字如LEVEL、关键字如TYPE(见Oracle保留字和关键字);ü各表之间相关列名尽量同名;ü除数据库名称长度为1-8个字符,其余为1-30个字符,Database link名称也不要超过30个字符;ü命名只能使用英文字母,数字和下划线;1.2表名规则如下:命名规则为xxx_yyy_TableName。
xxx表示开发公司的名称,最多五个字母构成,尽量用简称;yyy表示子系统中的子模块的名称(可以没有), 最多五个字母构成,尽量用简称;TableName为表含义, 最多十个字母构成,尽量用简称TableName规则如下:ü使用英文单词或词组作为表名,不得使用汉语拼音ü用名词和名词短语作表名ü不使用复数正确的命名,例如:fiber_sys_userfiber_biz_order1.3存储过程规则如下:命名规则为xxx_yyy_StoredProcedureName。
xxx表示开发公司的名称,最多五个字母构成,尽量用简称;yyy表示子系统中的子模块的名称(可以没有), 最多五个字母构成,尽量用简称;StoredProcedureName为存储过程含义,最多十个字母构成,尽量用简称StoredProcedureName规则如下:ü用动词或动词短语来命名,并带有宾语ü需要符合用Pascal 命名规则。
ü尽量谨慎地使用缩写ü尽量不要和关键字重合ü不要用任何名前缀(例如U,B)üStoredProcedureName内不使用下划线ü当操作依赖条件时,一般结尾使用By+条件存储过程正确的命名,例如:sys_InsertUsersys_SearchUserByUserIDsys_DeleteUserByUserID1.4视图规则如下:ü视图的命名采用xxx_yyy_ViewName_v。
oracle命名规则

oracle命名规则一、概述Oracle命名规则是指在Oracle数据库中定义各种对象(如表、列、索引、约束等)时所遵循的命名规范。
合理的命名规则可以提高数据管理的效率,降低出错率,使数据库更易于维护和管理。
二、命名规则的基本原则1. 命名应该简洁明了,易于理解和记忆。
2. 命名应该准确反映对象的含义和作用。
3. 命名应该避免使用特殊字符和空格,以免造成不必要的麻烦。
4. 命名应该遵循大小写敏感原则。
三、表命名规则1. 表名应该用单数形式,并且尽量简短明了。
2. 表名应该准确反映表内数据的含义和作用。
3. 表名中可以使用下划线分隔单词,但不建议过多使用。
四、列命名规则1. 列名应该用小写字母,并且尽量简短明了。
2. 列名应该准确反映列内数据的含义和作用。
3. 列名中可以使用下划线分隔单词,但不建议过多使用。
五、索引命名规则1. 索引名称应以“IDX_”开头,后面跟上表名和列名,以便于识别。
2. 索引名称应该用小写字母,并且尽量简短明了。
3. 索引名称中可以使用下划线分隔单词,但不建议过多使用。
六、约束命名规则1. 约束名称应以“PK_”或“FK_”开头,分别代表主键和外键。
2. 约束名称应该用小写字母,并且尽量简短明了。
3. 约束名称中可以使用下划线分隔单词,但不建议过多使用。
七、存储过程和函数命名规则1. 存储过程和函数名称应该用大写字母,并且尽量简短明了。
2. 存储过程和函数名称应该准确反映其功能和作用。
3. 存储过程和函数名称中可以使用下划线分隔单词,但不建议过多使用。
八、包命名规则1. 包名称应该用大写字母,并且尽量简短明了。
2. 包名称应该准确反映其功能和作用。
3. 包名称中可以使用下划线分隔单词,但不建议过多使用。
九、触发器命名规则1. 触发器名称应该用大写字母,并且尽量简短明了。
2. 触发器名称应该准确反映其功能和作用。
3. 触发器名称中可以使用下划线分隔单词,但不建议过多使用。
十、总结Oracle命名规则是数据库管理中不可或缺的一部分,良好的命名规则可以提高数据管理的效率和准确性。
数据库命名规范(表、字段名)

数据库命名规范(表、字段名)一.实体和属性的命名1.常用单词已经进行了缩写,在命名过程当中,根据语义拼凑缩写即可。
注意,由于ORCAL 数据库会将字段名称统一成大写或者小写中的一种,所以要求加上下划线举例:定义的缩写 Sales: Sal 销售;Order: Ord 订单;Detail: Dtl 明细;则销售订单名细表命名为:Sal_Ord_Dtl;2.如果表或者是字段的名称仅有一个单词,那么建议不使用缩写,而是用完整的单词。
举例:定义的缩写 Material Ma 物品;物品表名为:Material, 而不是 Ma.但是字段物品编码则是:Ma_ID;而不是Material_ID3.所有的存储值列表的表前面加上前缀Z目的是将这些值列表类排序在数据库最后。
4.所有的冗余类的命名(主要是累计表)前面加上前缀X冗余类是为了提高数据库效率,非规范化数据库的时候加入的字段。
或者表5.关联类通过用下划线连接两个基本类之后,再加前缀R的方式命名,后面按照字母顺序罗列两个表名或者表名的缩写。
关联表用于保存多对多关系。
如果被关联的表名大于10个字母,必须将原来的表名的进行缩写。
如果没有其他原因,建议都使用缩写。
举例:表Object与自身存在多对多的关系,则保存多对多关系的表命名为:R_Object;表 Depart和Employee;存在多对多的关系;则关联表命名为R_Dept_Emp6.每一个表都将有一个自动ID作为主健,逻辑上的主健作为第一组候选主健来定义,如果是数据库自动生成的编码,统一命名为:ID;如果是自定义的逻辑上的编码则用缩写加“ID”的方法命名。
举例:销售订单的编号字段命名:Sal_Ord_ID;如果还存在一个数据库生成的自动编号,则命名为:ID。
7.所有的属性加上有关类型的后缀,类型后缀的缩写定义见文件《类型后缀缩写定义》,注意,如果还需要其它的后缀,都放在类型后缀之前。
二.关系的命名关系的命名基本上按照;如有特殊情况,可以灵活处理.[must/may/can/should][verb/verb+prep][a/many/exatly num][or a/many]的结构命名三.域的命名四.触发器的命名五.有关于默认的几点说明1.严格依赖关系的主细表,主表的后缀Main可以不写。
Oracle数据库使用及命名规则的详解

Ekw719公司已建立的或待建立的网站,如:中文站(CHINA),国际站(ALIBABA),华商站(CHINESE)等。
OLPSOnline process system,在线处理系统,即我们的会员可以浏览的网站所连接的数据库,也是我们所说的前台。
BOPSBack Office process system,后台处理系统,即我们的网站的发布系统。
BZOBusiness Object(?),公司网站低层JAVA对象,主要负责与数据库打交道。
一、命名约定1.是指数据库、数据库对象如TABLE、SEQUENCE、PROCEDURE、COLUMN等的命名约定;2.命名富有意义英文词汇,除个别通用的(见列表),要避免使用缩写),多个单词组成的,中间以下划线分割;3.除数据库名称长度为1-8个字符,其余为1-30个字符,Database link名称也不要超过30个字符;4.命名只能使用英文字母,数字和下划线;'Ekw719'>5.避免使用Oracle的保留字如level、关键字如type(见列表);6.名表之间相关列名尽量同名;7.数据库的命名:网上数据库命名为“OLPS”+表示站点(SITE,以下同)的2-4个字符,后台数据库命名为“BOPS”+表示站点的2-4个字符。
测试数据库命名为“OLPS|BOPS”+“TEST”,开发数据库命名为“OLPS|BOPS”+“TEST”,用模式(SCHEMA/USER)的不同来区分不同的站点。
8.INDEX命名:table_name+column_name+index_type(1 byte)+idx,各部分以下划线(_)分割。
多单词组成的column name,取前几个单词首字母,加末单词组成column_name。
如:sample表member_id上的index: sample_mid_idx news表title上的unique index:news_titile_uidx;9.SEQUENCE命名:seq_+table_name;二、注释说明1.本注释说明主要用于PL/SQL程序及其它SQL文件,其它可作参考;2.SQLPLUS接受的注释有三种:――这儿是注释/*这儿是注释*/REM这儿是注释3.开始注释,类似JAVAK中的开始注释,主要列出文件名,编写日期,版权说明,程序功能以及修改记录:REMREM$Header: filename, version, created date,autherREMREM CopyrightREMREM FUNCTIONREM function explanationREMREM NOTESREMREM MODIFIED(yy/mm/dd)REM who when - for what, recently goes first4.块注释,如表注释,PROCEDURE注释等,同JAVA:/** This table is for TrustPass* mainly store the information* of TrustPass members*/5.单行注释,如列注释:login_id VARCHAR2(32) NOT NULL, -- 会员标识三、缩进低级别语句在高级别语句后的,一般缩进4个空格:DECLAREv_MemberId VARCHAR2(32),BEGINSELECT admin_member_id INTO v_MemberIdFROM companyWHERE id = 10;DBMS_OUTPUT.PUT_LINE(v_MemberId);END;同一语句不同部分的缩进,如果为sub statement,则通常为2个空格,如果与上一句某部分有密切联系的,则缩至与其对齐:BEGINFOR v_TmpRec IN(SELECT login_id,gmt_created, -- here indented as column abovesatusFROM member -- sub statementWHERE site = 'china'AND country='cn' )LOOPNULL;END LOOP;END;四、断行•一行最长不能超过80字符•同一语句不同字句之间•逗号以后空格•其他分割符前空格SELECT offer_name||','||offer_count as offer_category,idFROM categoryWHERE super_category_id_1 = 0;五、大小写属于ORACLE的关键字大小,表名、列名等小写。
命名规范(Oracle数据库)

命名规范(Oracle数据库)1、表命名命名最好望⽂⽣义,避免使⽤[数据库]关键词命名⼀律为⼤写字母(或⼩写,不要⼤下写混合)英⽂单词单数命名,例:FACTORY英⽂单词缩写命名,例:DEPT英⽂单词之间⽤下划线连结,且每个单词皆为单数,例:TASK_RESULT⽤来存储历史资料,命名以HISTORY结尾,例:TASK_HISTORY⽤来存储⽇志资料,命名以LOG结尾,例:TASK_LOG⽤来存储类别资料,命名以TYPE结尾,例:TASK_TYPE2、表字段命名最好望⽂⽣义,避免使⽤数据库关键词英⽂单词单数命名,例:MAIL英⽂单词缩写命名,例:DEPT_ID英⽂单词之间⽤下划线连结,且每个单词皆为单数,例:USER_NAME字段⽤来存储流⽔号,命名以ID结尾,例: TASK_ID字段⽤来存储代码,命名以NO结尾,例: TASK_NO字段⽤来存储⽇期,命名以DATE结尾,例:CREATE_DATE字段⽤来存储数量,命名以QTY结尾,例:PLAN_QTY字段⽤来存储类别,命名以TYPE结尾,例:STATION_TYPE字段⽤来存储名称,命名以NAME结尾,例:ENDUSER_NAME字段⽤来存储描述,命名以DESC结尾,例:STATION_DESC字段⽤来存储代码,命名以CODE结尾,例:ERROR_CODE字段⽤来存储标志,命名以FLAG开头,例:DEBUG_FLAG3、索引命名以表名+ INDEX+两位流⽔号(01~99),例:ENDUSER_INDEX014、键值主键命名以表名+PK+⼀位流⽔号(1~9),例:DEPT_PK1附键命名以表名+AK+⼀位流⽔号(1~9),例:DEPT_AK1外键命名以表名+FK+⼀位流⽔号(1~9),例:DEPT_FK1检查条件以表名+CK+⼀位流⽔号(1~9),例:DEPT_CK15、视图命名以V_开头例:V_DEPT其它规则参考资料表命名规则6、触发器以表名+TR+⼀位流⽔号(1~9) 命名,例:DEPT_TR17、存储过程命名以PC开头实现单⼀资料表交易功能,以PC+表名命名,例:PC_LINE实现关联资料表交易功能,以PC+功能命名,例:PC_GETDATA命名需让⼈明⽩其主要功能8、函数检查功能的函数,以Is+检查项⽬命名,例:bool IsCharValid(char)获取资料功能的函数,以Get+数据项命名,例:string GetLineNo(char)设定资料功能的函数,以Set+数据项命名,例:int SetLineNo(char)9、序列命名以SEQ开头以表的字段名命名,例: SEQ_LINE_ID若与其它表的字段名相同,则以表名+字段名命名,例:SEQ_CODE_TYPE_ID10、表空间存储资料的命名为项⽬名称,例:CRM存储索引的命名为项⽬名称+IDX,例:CRMIDX存储历史的命名为项⽬名称+OLD,例:CRMOLD存储临时的命名为项⽬名称+LOG,例:CRMLOG11、数据⽂件命名以所属表空间开头+两位流⽔号(01~99)+,ORA,例:CRM01,ORA12、包命名以功能缩写开头+PKG+流⽔号(1~9),例:CRMPKG113、⽤户项⽬管理者以项⽬名称命名,例:CRM开发者通⽤名称DEVELOPER初学者通⽤名称BEGINNER。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
竭诚为您提供优质文档/双击可除oracle数据库命名规范
篇一:oracle数据库管理脚本命名规范
oracle資料庫管理腳本命名規範
oracle中的数据字典是数据库中的非常重要的一部分,提供了相关数据库的信息,它是所有oracle用户(从应用
的最终用户、应用的设计开发者到数据库管理员)的非常重要的信息来源。
数据字典的创建,是在oracle数据库创建
完毕后,运行一些相关的数据库管理脚本来完成的。
当采用oracle统一安装器(oracleuniversalinstaller)创建数据库时,oracle服务器有关的字典视图和脚本最后会被自动安装。
但当需要升级目前的oracle数据库服务器时,数据库
管理员必须要手工重新运行创建这些视图或脚本的sql。
安
装完数据库后,oracle数据库管理脚本就存放在操作系统中。
对于unix和nt操作系统,分别位于不同的物理目录下,见表1所示:
表1数据库管理脚本在操作系统中的物理位置
oracle中几乎所有的系统管理脚本都保存在该文件目录下,该目录下含有上百个不同文件。
这些不同的文件都有什么作用呢?本文将详细讨论组成oracle数据库管理脚本的命名规范。
这样用户看到某个文件大概就可以知道该文件主要用途是什么。
该目录下的文件按照功能不同可分为4大类,oracle为了容易区分这几类不同的文件,对于文件的命名遵从一定的规则。
见表2所示。
表2数据库管理脚本命名规范
下面来详细介绍这四种不同类型的脚本功能:
1、cat*.sql脚本
该类脚本主要用于创建数据字典视图。
其中,脚本catalog.sql和catproc.sql是创建数据库后必须要运行的两个脚本。
这两个脚本的功能说明见表3所示。
(1)catalog.sql
该脚本创建相对于系统基表的视图和系统动态性能视图以及他们的同义词。
该脚本又同时运行创建其他对象的脚本,主要有:
基本pl/sql环境,包括pl/sql的声明:
-数据类型
-预定义例外
-内建的过程和函数
-sql操作等
审计
导入/导出
sql*loader
安装选项
(2)catproc.sql
该脚本主要用于建立pl/sql功能的使用环境。
此外,
还创建几个pl/sql包用于扩展Rdbms功能。
该脚本同时还
为下面的一些Rdbms功能创建另外的一些包和视图:警告(alerts)
管道(pipes)
日志分析(logminer)
大对象(largeobjects)
对象(objects)
高级队列(advancedqueuing)
复制选项(Replicationoption)
其他的一些内建包和选项(otherbuilt-insandoptions)(3)其他脚本
在该目录下还有其他一些脚本用来扩展oracle数据库
服务器功能。
如,catadt.sql脚本用来创建Rdbms中用来显示兆数据信息的数据字典视图。
catnoadt.sql脚本用来删除这些表和视图。
2、dbms*.sql和prvt*.plb脚本
这两类脚本用来创建扩展oracle服务器功能的系统预定义的一些oracle包的对象。
这些程序均用来完成数据库管理任务。
大多数的sql脚本在运行catproc.sql脚本时被执行。
一些额外的脚本必须由数据库管理员另外单独执行。
例如,dbmspool.sql脚本,用来显示在共享池中对象的大小并且为了减少共享池碎块可以将其在sga中标记为保持或可删除。
3、utl*.sql脚本
该类脚本只有在数据库需要另外的视图和表时才需要
运行。
例如,脚本
utlxplan.sql,用来创建一个表,该表用于观察sql语句的运行计划(executionplan)。
需要注意的是,绝大多数数据库管理脚本都必须在用户sys下运行。
数据库管理员如果打算运行这些脚本,最好首先阅读脚本内容中的相关信息,了解应该以什么用户来运行这些脚本。
篇二:oRacle数据库命名编码规范
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.7check约束
“chk+_+check约束的列名(或缩写)”
check约束命名为:
3.2.8unique约束
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]
insteadoF型触发器
系统名+ti_++_++[_row]
各种类型的触发器中
i,u,d分别表示insert、update和delete
行级触发器,后加_row标识,语句级触发器不加,如yddftr_csh_i_row
3.2.11簇
簇以簇中要存储的各个表(或表别名)及表间加and的
组成命名,即表“a+and+表b”,如存储gR(工人)和gRjn(工人技能)表的簇命名为gRandgRjn
3.3视图
视图命名以系统名v_+模块名作为前缀,其他命名规则和表的命名类似
3.4序列
序列命名以seq_+含义名组成
3.5同义词
同义词命名与其基础对象的名称一致,但要去除其用户前缀或含有远程数据库链接的后缀
3.6存储对象相关
3.6.1存储过程
存储过程命名由“系统名+sp+_+存储过程标识(缩写)”组成
存储过程标识要以实际含义的汉语拼音的首字符构成,并用下划线分割各个组成部分。
如增加代理商的帐户的存储过程为“sfsp_zjdlszh”。
3.6.2函数
函数命名由“系统名+f+_+函数标识”组成
3.6.3包
包命名由“系统名+pkg+_+包标识”组成
3.6.4函数文本中的变量采用下列格式命名:。