01-3.9i10g表与约束(70页).pptVIP

  • 2
  • 0
  • 约2.66万字
  • 约 84页
  • 2018-02-06 发布于河南
  • 举报
01-3.9i10g表与约束(70页)

Oracle 9i/10g 表创建与修改 赵元杰 2007.11.01 Zyj5681@ 内容 Oracle 对象创建准备; 创建表与存储参数; 表空间与存储参数 修改表; 创建约束与DML问题; 参考资料; Oracle表创建准备-数据类型 Oracle表创建准备-数据类型 Oracle表创建准备-数据类型 Oracle表创建准备-数据类型 Oracle表创建准备-数据类型 10g BINARY_FLOAT数据类型: 32 Bit 的单精度数据类型BINARY_FLOAT; BINARY_FLOAT 以 5个字节存储,含一个长度字节; 10g BINARY_DOUBLE数据类型: 64 Bit 的双精度数据类型BINARY_DOUBLE ; BINARY_DOUBLE以 9个字节存储,含一个长度字节; Oracle表创建准备-数据类型 数据类型选择要点: 不要使用long或long raw类型; 一般不要NCHAR等类型; Number(p,s)类型要满足应用系统发展需要; Number(p,s)类型在整个应用系统中要保持一致性!! 应用系统设计与数据仓库考虑: 列名与类型一致性问题; 将来的数据整合问题; 统一使用Number(p,s)类型; 数字类型整数与精度要一致。 创建表结构-Create table语法 建议采用命令方式: 认真研究Oracle的CREATE TABLE子句; 关键的项不要采用默认值,语法如下: 创建表结构-Create table语法 创建表结构-Create table语法 创建表结构-Create table语法 创建表结构-块参数 建议采用命令方式: 认真研究Oracle的CREATE TABLE子句; 关键的项不要采用默认值,语法如下: 创建表结构 创建一个带LOB类型的表结构: 表空间与存储参数 表空间的类型: Oracle 8i 可允许创建本地的表空间; Oracle 9i/10g 一般采用本地表空间; 在9i/10g建议不要再使字典类型表空间。 存储参数设置: 字典类型表空间可设置STORAGE的所有项; 本地管理表空间一般设置STORAGE的INITIAL项; 9i/10g 本地管理表空间AUTOALLOCATE SEGMENT SPACE MANAGEMENT MANUAL,则可指定 next等参数,且系统采用该参数; 9i/10g 本地管理表空间AUTOALLOCATE SEGMENT SPACE MANAGEMENT AUTO,则可指定 next等参数,但系统不用该参数,而是自动调整。 表空间与存储参数 为什么9i/10g取消段的空间扩展设置: 表数据的增长与空间的不断减少是矛盾的关键; NEXT 表示必须分配一组连序的Oracle块; 如果表空间无NEXT所要求的连续块,则分配失败; 9i/10g 为表扩展空间时不参考NEXT,而是根据表的增长与实际表空间剩余的空间来确定。 存储参数设置: 字典类型表空间-可设置STORAGE的所有项; 本地管理表空间-仅STORAGE的INITIAL有效; 表空间与存储参数 块控制参数设置: 9i/10g 本地管理表空间ASSM(AUTOALLOCATE SEGMENT SPACE MANAGEMENT AUTO,Oracle根据dba_tables.avg_row_len来调整PCTUSED的大小。 ASSM(AUTOALLOCATE SEGMENT SPACE MANAGEMENT MANUAL,Oracle根据你的PCTUSED设置来调整PCTUSED的大小; SYSTEM表空间ASSM为MANUAL,USERS表空间ASSM为AUTO(见后面脚本); 表空间与存储参数 创建表结构前: 根据表数据变化特点,创建相应的表空间; 表空间的对应数据文件大小要合理; 在创建表时指定到创建好的表空间上,并根据表空间是否是字典/本地来确定是否指定NEXT等参数: 表空间与存储参数 ASSM下创建表结构: 观察下面脚本运行的结果: 表空间与存储参数 LMT的extent_management_clause: AUTOALLOCATE(默认值)区的大小由系统来管理(忽略NEXT等参数); 块小于16K则分配64K;大于16K,则分配1M; 然后再根据表增长情况分配区,大小是64K,1M,8M… LMT为UNIFORM情况: UNIFORM规定每次扩展都一样的大小; UNIFORM默认为5个Oracle 块; segment_management_clause: SEGMENT SPACE MANAGEMENT MANUAL/AUTO; 如果SSM=AUTO,则Oracle忽略对像的PCTUSED, FREELIST

文档评论(0)

1亿VIP精品文档

相关文档