Chinaunix首页 | 论坛 | 博客
  • 博客访问: 92501399
  • 博文数量: 19283
  • 博客积分: 9968
  • 博客等级: 上将
  • 技术积分: 196062
  • 用 户 组: 普通用户
  • 注册时间: 2007-02-07 14:28
文章分类

全部博文(19283)

文章存档

2011年(1)

2009年(125)

2008年(19094)

2007年(63)

分类: Oracle

2008-05-22 17:30:06

 来源:

本文仔细介绍了Oracle数据库使用及命名规则,及Oracle中的缩写含义。

公司已建立的或待建立的,如:中文站(CHINA),国际站(ALIBABA),华商站(CHINESE)等。

OLPS--Online process system,在线处理系统,即我们的可以浏览的网站所的数据库,也是我们所说的前台。

BOPS --Back Office process system,后台处理系统,即我们的网站的发布系统。

BZO--Business Object,公司网站低层JAVA对象,主要负责与数据库打交道。

一、 命名约定

1. 是指数据库、数据库对象如TABLE、SEQUENCE、PROCEDURE、COLUMN等的命名约定;

2. 命名富有意义英文词汇,除个别通用的(见列表),要避免使用缩写),多个单词组成的,中间以下划线分割;

3. 除数据库名称长度为1-8个字符,其余为1-30个字符,Database link名称也不要超过30个字符;

4. 命名只能使用英文字母,数字和下划线;

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中的开始注释,主要列出文件名,编写,版权说明,程序功能以及修改记录:

REM 
REM  $Header: filename, version, created date,auther 
REM 
REM Copyright 
REM 
REM FUNCTION 
REM function explanation 
REM 
REM NOTES 
REM 
REM MODIFIED (yy/mm/dd) 
REM who when - for what, recently goes first

4. 块注释,如表注释,PROCEDURE注释等,同JAVA:

/* 
* 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_MemberId); 
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字符

• 同一语句不同字句之间

• 逗号以后空格

• 其他分割符前空格

SELECT offer_name 
||',' 
||offer_count as offer_category, 
id 
FROM category 
WHERE super_category_id_1 = 0;
阅读(381) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~