流的DML类型支持和支持的数据类型适用于:
服务器 - 企业版 - 版本:9.2.0.1到11.1.0.6 - 版本:9.2至11.1
本文档中的信息适用于任何平台。
服务器 - 企业版 - 版本:9.2.0.1到11.1.0.6
用途
自从推出9.2版本的数据流,支持的数据类型和管理的DML更改的名单已越来越多跨版本。这说明将列出在不同的版本的支持和不支持的数据类型,并列出支持的DML类型。
有关该DDL类型和进一步的细节,请参考文档。
Oracle流的概念和管理范围和应用
被用来作为DBA的配置和故障诊断时的参考流
流的支持和支持的数据类型的DML类型
它首先有必要澄清的是,Capture进程支持的DML类型和数据类型并不总是由应用程序与DML的类型和支持的数据类型相匹配。
因此,我区分捕获进程的行为和Apply进程。
还注意各个发布的功能正在增加,因此应承担发布9i中支持的东西仍然是发布11G。
还请注意ALL/ DBA_STREAMS_NEWLY_SUPPORTED意见和/DBA_STREAMS_UNSUPPORTED
自发布10.1,他们允许你检查什么是新的支持表和不支持的表。
捕获进程
捕获过程中从来没有捕捉在SYS,SYSTEM或CTXSYS模式的变化。
捕捉过程中不能捕捉到的DML变化:
临时表或对象表
段压缩存储的表启用
表中的闪回数据归档
外部表
关于索引组织表(IOTs)
在发布9i中,捕获过程不能捕捉到索引组织表或对象表的DML更改
在发布10G,只有当捕获过程中可以捕捉到一个索引组织表所做的更改
索引组织表不包含以下任何数据类型列:
物理位置
通用物理位置
用户定义类型(包括对象类型,文献,可变数组和嵌套表)
在发行11.1,只有当捕获过程可以捕捉到一个索引组织表所做的更改
索引组织表不包含以下任何数据类型列
物理位置
用户定义类型(包括对象类型,文献,可变数组和嵌套表)
存储的XMLType对象关系或二进制XML(XMLType的存储为CLOB支持。)
以下Oracle提供的类型:任何类型的URI类型,空间类型和媒体类型
注意:是重做日志这就决定了原始数据库源
支持什么和不支持什么。
CDC的用法
使用CDC尝试日志包含XMLType的操作将失败
使用CDC尝试日志包含XMLType的操作将失败
XMLType列由CDC不支持任何版本,独立于它们是如何存储的。
create_change_table过程不允许XMLType列在指定的
column_list中以来的XMLType参数没有被疾病预防控制中心支持documneted。
参考:
问题:8679062 ORA-26674:在11g列捕捉XMLType列不匹配的
当捕获行的变化,从对表的DML更改,捕获过程中可以捕捉到以下数据类型的列所做的更改:
9i
10G
11.1
CHAR
BINARY_FLOAT
FLOAT
NCHAR
BINARY_DOUBLE
CLOB with BASICFILE storage
VARCHAR2
LONG
NCLOB with BASICFILE storage
NVARCHAR2
LONG RAW
BLOB with BASICFILE storage
NUMBER
CLOB
XMLType stored as CLOB
DATE
NCLOB
RAW
UROWID
BLOB
CLOB (fixed width character sets only)
TIMESTAMP
TIMESTAMP WITH TIME ZONE
TIMESTAMP WITH LOCAL TIME ZONE
INTERVAL YEAR TO MONTH
INTERVAL DAY TO SECOND
捕捉过程中不捕获DML更改的结果列
以下数据类型:
* SECUREFILE CLOB,NCLOB,和BLOB
* BFILE的
*的ROWID
*用户定义类型(包括对象类型,文献,可变数组和嵌套表)
*存储的XMLType对象关系或作为二进制XML
*以下Oracle提供的类型:任何类型的URI类型,空间类型和媒体类型
此外,捕捉过程中不捕获到虚拟的DML更改的结果列。
9i
10G
11.1
CHAR
LONG
FLOAT
NCHAR
BINARY_FLOAT
CLOB with BASICFILE storage
VARCHAR2
BINARY_DOUBLE
NCLOB with BASICFILE storage
NVARCHAR2
LONG RAW
BLOB with BASICFILE storage
NUMBER
NCLOB
XMLType stored as CLOB, object relationally, or as binary XM
DATE
UROWID
CLOB
BLOB
RAW
TIMESTAMP
TIMESTAMP WITH TIME ZONE
TIMESTAMP WITH LOCAL TIME ZONE
INTERVAL YEAR TO MONTH
INTERVAL DAY TO SECOND
注:在以前的版本的Oracle数据库,Oracle流不支持复制与虚拟列的表的变化。
在Oracle数据库11g第1版(11.1)后,Oracle流支持表虚拟列。
如果表使用功能流9i中捕捉过程也会失败ORA-902或降序索引。
Apply进程
作为应用程序不处理的DML调用,处理LCRS或用户信息的限制,只适用于在数据类型层。
apply进程行LCRS数据操纵语言(DML)表的更改申请时,适用下列数据类型的列所做的更改:
注:SECUREFILE CLOB,NCLOB,BLOB和虚拟列
Oracle 11g数据库的新功能。
(参考:11g数据库新特性指南手册)
一个应用程序不适用于行LCRS包含以下数据类型的列的DML更改的结果:
* SECUREFILE,SECUREFILE NCLOB CLOB的和SECUREFILE的BLOB
* BFILE的
* ROWID的
*用户定义类型(包括对象类型,文献,可变数组和嵌套表)
*以下Oracle提供的类型:任何类型的URI类型,空间类型和媒体类型