Oracle数据库使用及命名规则的详解_第1页
Oracle数据库使用及命名规则的详解_第2页
Oracle数据库使用及命名规则的详解_第3页
Oracle数据库使用及命名规则的详解_第4页
Oracle数据库使用及命名规则的详解_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、.:.;Ekw719公司已建立的或待建立的网站,如:中文站CHINA,国际站ALIBABA,华商站CHINESE等。 OLPS Online process system,在线处置系统,即我们的会员可以阅读的网站所衔接的数据库,也是我们所说的前台。 BOPS Back Office process system,后台处置系统,即我们的网站的发布系统。 BZO Business Object(?),公司网站低层JAVA对象,主要担任与数据库打交道。 一、 命名商定 1 是指数据库、数据库对象如TABLE、SEQUENCE、PROCEDURE、COLUMN等的命名商定; 2 命名富有意义英文词汇,

2、除个别通用的见列表,要防止运用缩写,多个单词组成的,中间以下划线分割; 3 除数据库称号长度为18个字符,其他为130个字符,Database link称号也不要超越30个字符; 4 命名只能运用英文字母,数字和下划线; Ekw719 5 防止运用Oracle的保管字如level、关键字如type见列表; 6 名表之间相关列名尽量同名; 7 数据库的命名:网上数据库命名为“OLPS表示站点SITE,以下同的24个字符,后台数据库命名为“BOPS+表示站点的24个字符。测试数据库命名为“OLPS|BOPS+“TEST,开发数据库命名为“OLPS|BOPS+“TEST,用方式SCHEMAUSER的

3、不同来区分不同的站点。 8 INDEX命名:table_name+column_name+index_type(1 byte)+idx,各部分以下划线_分割。多单词组成的,取前几个单词首字母,加末单词组成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接受的注释有三种: 这儿是注释 *这

4、儿是注释* REM这儿是注释 3 开场注释,类似JAVAK中的开场注释,主要列出文件名,编写日期,版权阐明,程序功能以及修正记录: REM REM$Header: filename, version, created date,auther REM REM Copyright REM REM FUNCTION REM function explanation REM REM NOTES REM REM MODIFIEDyy/mm/dd REM who when - for what, recently goes first 4 块注释,如表注释,PROCEDURE注释等,同JAVA: /* *

5、 This table is for TrustPass * mainly store the information * of TrustPass members */ 5 单行注释,如列注释: login_id VARCHAR2(32) NOT NULL, - 会员标识 三、 缩进 低级别语句在高级别语句后的,普通缩进4个空格: DECLARE v_MemberId VARCHAR2(32), BEGIN SELECT admin_member_id INTO v_MemberId FROM company WHERE id = 10; DBMS_OUTPUT.PUT_LINE(v_Mem

6、berId); END; 同一语句不同部分的缩进,假设为sub statement,那么通常为2个空格,假设与上一句某部分有亲密联络的,那么缩至与其对齐: BEGIN FOR v_TmpRec IN (SELECT login_id, gmt_created, - here indented as column above satus FROM member - sub statement WHERE site = china AND country=cn ) LOOP NULL; END LOOP; END; 四、 断行 一行最长不能超越80字符 同一语句不同字句之间 逗号以后空格 其他分割

7、符前空格 SELECToffer_name |, |offer_count as offer_category, id FROM category WHERE super_category_id_1 = 0; 五、 大小写 属于ORACLE的关键字大小,表名、列名等小写。 六、 列类型的选择 用CHAR(1)替代布尔值; 应尽量运用VARCHAR2替代CHAR类型; VARCHAR(2)最多4000字符; DATE准确到微秒,而非天; Ekw719 运用CLOB替代LONG,BLOB替代LONGRAW; ORACLE只需NUMBER一种数据类型,运用时请给定长度; 七、 主键选择 选择有意义的

8、,不太长且能独一标识记录行的列做主键,没有这种列时,才思索运用SEQUENCE做主健。 八、 列长度的选择 该当根据实践需求选择列长度。有对应web 页面的,与页面上对应列长度一致。 对数据的验证除数据库端实现外还要尽能够在表现层控制。 九、 运用SQL语句的商定 1 尽量防止在循环中运用SQL语句。 2 防止在WHERE字句中对列施以函数: SELECT FROMservice_promotion WHERE TO_CHAR(gmt_modified,yyyy-mm-dd) = 20001-09-01; 而应运用: SELECT * FROM service_promotion WHERE

9、gmt_modified = TO_DATE(2001-9-01,yyyy-mm-dd) AND gmt_modified TO_DATE(2001-9-02,yyyy-mm-dd); 3 防止运用数据库的类型自动转换功能: SELECT * FROM category WHERE id = 123; - ids type is number 4 防止无效的衔接: SELECT count(*) FROM offer a, count_by_email b WHERE a.(+) = b.; 5 衔接join时要运用别名: SELECT a.*,b.offer_count(*) FROM of

10、fer a, count_by_email b WHERE a.(+) = b.; 6. 取TABLE 的META信息: SELECT * FROM table_name WHERE rowid is null (or rownum = 1 or pk = impossible_value); 可思索运用: SELECT * FROM table_name WHERE 1 = 0 ; 十、 关于ALIBABA表的商定 假设运用ALIBABABZO,设表至少有如下字段: site VARCHAR2(32) gmt_create DATE gmt_modified DATE 假设从IdBizObj

11、ect承继,那么还有一个NUMBER型的列,通常是主键,并与某一个SEQUENCECF对应;假设从StrIdBizObject承继,那么还有一个VARCHAR2型的列。 十一、 列值商定 1 有固定值列表的列,如status, action, site, 其值取小写; 2 应尽能够选择数字来代表固定值列表中的值,相应的列定义为NUMBER型; 3 用CHAR1表示布尔值的取大写:“Y,“N。 十二、 关于表反复属性的定义 不能有多择一的反复属性列; 对于能多项选择的反复属性列,假设不做查询列并且反复次数较多,应运用ID_VARRAY替代,如要用作查询列,反复次数多的,应另建一表,次数少的且列值

12、为二择一时,应运用NUMBER类型,加位操作。 十三、 数据修正商定 发现Production环境中数据有误,需求矫正的,应在RATERMINAL上提交数据更新表单,由数据库操作员在当日17时前修正终了。 数据库更程序更新的构造变动及数据更新,类似处置。 提交SQTT测试需求预备数据或更新构造的,暂时先写入测试恳求中,由SQTT同志MAIL注明测试恳求表单链接即可经过数据库操作员修正数据库。待内部网TEAM添加新的表单后,测试恳求分开提交。 十四、 数据库设计流程 在新工程设计阶段会议,应有DBA参与。在SCHEMA确定以后方可开场编码。 缩写字列表: payment pymt my trad

13、e activity mta 特殊字列表: ACCESS DECIMAL INITIAL ON START ADD NOT INSERT ONLINE SUCCESSFUL ALL DEFAULT INTEGER OPTION SYNONYM ALTER DELETE INTERSECT OR SYSDATE AND DESC INTO ORDER TABLE ANY DISTINCT IS PCTFREE THEN AS DROP LEVEL PRIOR TO ASC ELSE LIKE PRIVILEGES TRIGGER AUDIT EXCLUSIVE LOCK PUBLIC UID B

14、ETWEEN EXISTS LONG RAW UNION BY FILE MAXEXTENTS RENAME UNIQUE FROM FLOAT MINUS RESOURCE UPDATE CHAR FOR MLSLABEL REVOKE USER CHECK SHARE MODE ROW VALIDATE CLUSTER GRANT MODIFY ROWID VALUES COLUMN GROUP NOAUDIT ROWNUM VARCHAR COMMENT HAVING NOCOMPRESS ROWS VARCHAR2 COMPRESS IDENTIFIED NOWAIT SELECT VIEW CONNECT

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论