Data Structure

Posted by suave.su under DB Related
No Comments 

写于2005年11月6日

Chapter4 Data Structure

数据类型
数据类型(datatype)的列(column)或存储过程中变量的一个属性。分三个基本类型:字符
数据类型,数字数据类型,表示其他类型的数据类型。

字符数据类型 Character datatype
CHAR 存储固定长度的字符值,1-2000,默认为1
VARCHAR2 存储可变长度的字符串,指定的是对该变量复制的最大长度,最多4000个字符
NCHAR和NVARCHAR2 分别存储固定长度与可变长度的字符数据,但使用和数据库其他类型
不同的字符集,创建DB时,需指定所使用的字符集
LONG 可存2GB的字符数据,但很多限制,Oracle推荐使用CLOB和NCLOB类型
CLOB和NCLOB 可存4GB字符数据,NCLOB可存NLS(National LanguageSet 本地语言集)

数字数据类型
NUMBER 自动获得38位精度,有两个限定符:
column NUMBER(precison,scale)
scale 小数点右边的位数 default:0
precison 精度 1-38
scale设为负数,Oracle将把该数取舍到小数点左边的指定位数

日期数据类型
Oracle标准日期格式:DD-MON-YY HH:MI:SS
修改实例参数NLS_DATE_FORMAT可改日期格式,支持日期运算,整数表示天,小数表示小时,分,
秒的组合

其他的数据类型
RAW和LONG RAW 主要用于对数据库进行解释,以位的形式存储数据,RAW 2k,LONG RAW 2G
ROWID 伪列
LOB 大型对象存储 4GB
CLOB 字符数据
NCLOB 本地语言字符集数据
BLOB 以二进制信息保存数据
BFILE
XML Type

Oracle SQL的连接操作符是“||”,将两个字符值连接

Oracle三个基本数据结构:表 视图 索引


9i可用一个值列表来定义分区,在Data Warehouse中很有用,进行性能优化

可对table和index进行相同的分区,这样表分区和索引分区都映射到相同的行集合。这种类
型的划分成为均分(equipartitioning)。可通过对分区表指定索引为LOCAL索引来自动实现

索引
Oracle中的index是DB内部使用的物理结构。键是关于逻辑实体的术语。一般其值存储在索引中

Oracle 8以后支持5个约束类型

  1. NOT NULL
  2. 唯一性
  3. 主键
  4. 外键
  5. 校验

尽量使用约束而不是触发器(trigger)

触发器 trigger
3个事件可以引起触发器:UPDATE, INSERT, DELETE
trigger实在行一级被定义的。
trigger的触发器有3个时机:在执行触发事件之前,在执行触发时间之后,非触发事件

注意:INSTEAD OF trigger

every trigger has a trigger restriction that is a bool expression.

触发器错误可能引起变异表(mutating table)和约束表(constraining table)

Oracle 8:取消了某些触发器激活的约束引起的错误

Oracle 8i还引入了:
database-level event trigger
schema-level event trigger

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值