Oracle数据库开发规范.docx
《Oracle数据库开发规范.docx》由会员分享,可在线阅读,更多相关《Oracle数据库开发规范.docx(45页珍藏版)》请在优知文库上搜索。
1、ORAC1.E数据库开发规范注:木规范基于ORAC1.EI0G。对于其他数据库以及ORAC1.E数据库其他的版本,本规范并不一定合适。目录目录错误!未定义书签。1:字符集、字段类型错误!未定义书签。1. 1:字符集错误!未定义书签。2. 2:字段类型错误!未定义书签。2:命名规范错误!未定义书签。3. 1:命名规则表错误!未定义书签。4. 2:命名规范:错误!未定义书签。3:书写规范错误!未定义书签。5. 1:缩进风格与对齐错误!未定义书签。6. 2:语句书写规则错误!未定义书签。7. 3:其他错误!未定义书签。4:表错误!未定义书签。5:触发器错误!未定义书签。6:主键和外键:错误!未定义书
2、签。7:索引错误!未定义书签。7.1:建立索引错误!未定义书签。7.2:使用索引错误!未定义书签。8:视图错误!未定义书签。9:存储过程和函数错误!未定义书签。10:注释规范错误!未定义书签。10.1:总则错误!未定义书签。10.2:存储过程、函数头注释错误!未定义书签。10.3:文献注释错误!未定义书签。11:脚本规范错误!未定义书签。12:SQ1.语句性能优化13:冗余信息14:异常解决附录错误!未定义书签错误!未定义书签错误!未定义书签错误!未定义书签错误!未定义书签数据库三个范式.1:字符集、字段类型1. 1:字符集ORAC1.E的数据库实例有2个字符集设立:数据库字符集和国家字符集。
3、 【规则数据库字符集设立为ZHS16GBK,国家字符集设立为A1.16UTF16。 【规则1-1-2不要试图修改数据库的字符集。假如需要不同字符集的数据库实例,那只能重新建立一个新的数据库实例。1.2:字段类型【规则1-2-1定长文本型字段都要声明char,不定长文本型字段都要声明成varchar2(假如的确需要,也可以使用nvarchar2)类型。 例如:Createtablet_test(namevarchar2(10),departmentnvarchar2(20);请注意,在ZHS16GBK字符集下,每一个汉字是占用2个字节,而每一个英文字母和符号占用一个字节。上面的name字段可以最
4、多存储5个汉字,或者是10个字母。而department字段可以最多保存20个字符,不管是汉字或者字母。 也可以如下声明:Createtablet_test(namevarchar2(10char),departmentvarchar2(20char);这样的话,不管是汉字或者是字母,name字段就可以保存最多10个字符,。【规则所有的日期型都要声明成文本型,形同:yyyyMMdd0其中,yyyy是4位数的年份,MM是两位数的月份,dd是两位数的日期。举例如下:20230U2表达2023年1月份12日【规则123】所有的时间型都要声明成文本型,形同:hh24:mi:sso其中,hh24表达是2
5、4进制的小时,mi是分钟,ss是秒数。举例如下:11:12:13表达11点12分13秒。 【规则2-2-3假如一个字段需要同时包含日期和时间,需要提成日期型和时间型两种类型的字段进行设计。 【规则124】bool型字段一律定义成Char(I)类型,0,表达false,,1表达true。同时需要在该字段上面加约束,使合法的取值只能是0,1。 【规则125】所有的整型字段都应当声明为number(n),n为整型字段有效长度。比如Createtablet_test(agenumber(3)字段age能存储从-999到999的数字。当然,可以在这个字段上加约束,以约束它只能保存正数。不要如以下的方式定
6、义整型:Createtablet_test(agenumber)o由于这样定义等价于:Createtablet_test(agenumber(38)很显然,这个字段定义得实在太大太大了。不仅没有必要,并且对数据库有负面影响。【规则126】所有的浮点数定义为:number(p,s),其中的P是表达精度,或者总位数,取138中数字。S是小数位数,合法值为:84-127。比如:Createtabletable1(salarynumber(8,2)这个Salary字段表达,精确到小数点后面2位,总共最多有8位数字,这样算来,在小数点前面,最多能有6位数字。这个字段能表达的最大正数是999999.99,
7、最大负数是-999999.99。【规则127】假如一个字段保存的是一系列的编码(枚举型),则该字段必须定义成文本型。字段中保存的是大写字母。举例如下:CUStomer表格有一个字段CUStomejlype,该字段相应的是客户的类型编码,字段类型是Chal(1),其中,N表达普通客户,表达VlP客户。同时必须增长约束,以保证枚举选择以外的值不能被插入。【规则128】如无特殊需求,避免使用大字段(blob,clob,long,text,image等)。假如需要使用大字段,可以先考虑Blob。2:命名规范2.1:命名规则表对象名前缀范例描叙数据库实例无sale_test表空间ts_ts_user表t
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Oracle 数据库 开发 规范
