OGG将Oracle的Number数据类型映射为Sybase的Timestamp或者**Varbinary** 数据类型
**OGG Mapping of Oracle Number to Sybase Timestamp or Varbinary (Doc ID 1380228.1)**
适用
Oracle GoldenGate - Version 11.1.1.0.1 and later
Information in this document applies to any platform.
目标
OGG可以将Oracle的Number数据类型映射为Sybase的Timestamp或者**Varbinary** 数据类型么?
解决方案
1) Oracle number to Sybase timestamp column mapping
该映射是无效的,因为Sybase timestamp数据类型是由Sybase自定义的,内部定义是varbinary(8) NULL
每一个Sybase table最多含有一个timestamp类型的列,当含有timestamp类型的一行数据被插入或者更新时, timestamp类型的列会被自动更新
http://dba.fyicenter.com/Interview-Questions/SYBASE/The_timestamp_datatype_in_Sybase_.html
在Sybase中,直接插入或更新timestamp列没有意义,因为当插入或更新包含timestamp列的行时,数据库将不断更新timestamp列。Sybase中的timestamp就像一个计数器,在更新行时获取唯一值。
2) Oracle number datatype to Sybase varbinary(8) datatype
这种类型的映射是可能的。但是没有一个简单的方法去验证目的端Sybase的varbinary列,因为varbinary是十六进制表示的。
每个numeric/number值被展示为2个字节,16进制。
最好还是将源头Oracle number数据类型映射为Sybase numeric数据类型