一、表的类型
常用表、分区表、索引组织表(Index-organized)、族表
二、Oracle数据类型
用户定义类型
内部定义类型:
1、数量:CHAR(N)/NCHAR(N)、VARCHAR2(N)/NVARCHAR2(N)、NUMBER(P,S)、DATE、TIMESTAMP、RAW(N)、BLOB/CLOB/NCLOB/BFILE、LONG/LONG RAW、ROWID/UROWID
2、集合:变量、表
3、关系:参考
其中:
RAW(N):存储小的二进制数据,在将RAW的数据类型通过应用工具传送到其他数据库的过程中Oracle Server不会对其进行字符集的转换。
LONG/LONG RAW:为9i之前使用的LOB类型。
三、ROWID格式
1、扩展ROWID格式
OOOOOO FFF BBBBBB RRR
数据对象编号 相关文件编号 块编号 行编号
一个扩展ROWID需要10个字节,用18个字符表示,包含以下几个部分:
数据对象编号:在数据库对象产生的时候指定的全数据库唯一的编号。
相关文件编号:在一个表空间中是唯一的。
块编号:表示包含行块的位置。
行编号:在block(块)头中关于行信息位置的编号。
数据对象编号需要32位,相关文件编号需要10位,块编号22位,行编号16位,加在一起是80位或者10个字节。
一个扩展ROWID使用64进制编码来显示,使用6位显示对象编号,3位显示相关文件编号,6位显示块编号,3位显示行编号。64进制码使用“A-Z"、“a-z“、“0-9“加上“+”和“/”一共64个字符。
2、相对ROWID:在Oracle8以前使用相对ROWID,只使用6个字节存储。
3、使用ROWID定位一行