不同类型的数据库(异构数据库)支持的数据类型不一样,DTS在进行异构数据库之间的数据同步时,会在结构初始化阶段进行数据类型映射,即将源库中的数据类型转为目标库支持的数据类型。本文为您列出详细数据类型映射关系,便于您查阅和评估数据同步对业务的影响。

概览

根据如下同步方案,查看异构数据库间的数据类型映射关系:

以PolarDB MySQL、RDS MySQL、自建MySQL为源的数据同步

当源实例为PolarDB MySQL、RDS MySQL、自建MySQL,且目标实例为异构数据库时(包括云原生数据仓库AnalyticDB MySQL版和2.0、云原生数据仓库AnalyticDB PostgreSQL版),两者间的数据类型映射关系如下:
说明 如源实例中待同步数据范围超出DTS所支持的范围,则会导致目标实例中的所写入数据的精度降低。
表 1. 目标实例为云原生数据仓库AnalyticDB MySQL版、云原生数据仓库AnalyticDB PostgreSQL版
类型 源实例的数据类型 数值范围 云原生数据仓库AnalyticDB MySQL版的数据类型 云原生数据仓库AnalyticDB PostgreSQL版的数据类型
整数类型 BIT[(M)] 1 ~ 64 VARCHAR BIT
TINYINT[(M)] -128 ~ 127 TINYINT SMALLINT
TINYINT[(M)] [UNSIGNED] 0 ~ 255 SMALLINT SMALLINT
SMALLINT[(M)] -32768 ~ 32767 SMALLINT SMALLINT
SMALLINT[(M)] [UNSIGNED] 0 ~ 65535 INT INTEGER
MEDIUMINT[(M)] -8388608 ~ 8388607 INT INTEGER
MEDIUMINT[(M)] [UNSIGNED] 0 ~ 16777215 INT INTEGER
INT[(M)] -2147483648 ~ 2147483647 INT INTEGER
INT[(M)] [UNSIGNED] 0 ~ 4294967295 BIGINT BIGINT
BIGINT[(M)] -9223372036854775808 ~ 9223372036854775807 BIGINT BIGINT
BIGINT[(M)] [UNSIGNED] 0 ~ 18446744073709551615 DECIMAL(20,0) NUMERIC(20)
小数类型 DECIMAL[(M[,D])] M:0~65 ;
D:0~30
DECIMAL[(M[,D])] DECIMAL
FLOAT(p) 1.175494351E-38 ~ 3.402823466E+38 FLOAT REAL
DOUBLE[(M,D)] 2.2250738585072014E-308 ~ 1.7976931348623157E+308 DOUBLE DOUBLE PRECISION
时间类型 DATE 1000-01-01~9999-12-31
说明 格式为YYYY-MM-DD(UTC时间)。
DATE DATE
DATETIME[(fsp)] 1000-01-01 00:00:00.000000 ~ 9999-12-31 23:59:59.999999
说明 格式为YYYY-MM-DD hh:mm:ss[.fraction](UTC时间)。
DATETIME TIMESTAMP
TIMESTAMP[(fsp)] 1970-01-01 00:00:01.000000 ~ 2038-01-19 03:14:07.999999
说明 格式为YYYY-MM-DD hh:mm:ss[.fraction](UTC时间)。
TIMESTAMP TIMESTAMP WITH TIME ZONE
TIME[(fsp)] -838:59:59.000000 ~ 838:59:59.000000
说明 格式为hh:mm:ss[.fraction](UTC时间)。
TIME TIME
YEAR[(4)] 1901 ~ 2155,或0000. INT INTEGER
字符串类型 CHAR[(M)] 0 ~ 255 字符 VARCHAR CHAR
VARCHAR(M) 0 ~ 65,535 字符 VARCHAR VARCHAR
BINARY[(M)] 0 ~ 255 字节 VARBINARY BYTEA
VARBINARY(M) 0 ~ 65,535 字节 VARBINARY BYTEA
TINYBLOB 255 (2^8 − 1) 字节 VARBINARY BYTEA
TINYTEXT 255 (2^8 − 1) 字符 VARCHAR TEXT
BLOB 65,535 (2^16 − 1) 字节 VARBINARY BYTEA
TEXT 65,535 (2^16 − 1) 字符 VARCHAR TEXT
MEDIUMBLOB 16,777,215 (2^24 − 1) 字节 VARBINARY BYTEA
MEDIUMTEXT 16,777,215 (2^24 − 1) 字符 VARCHAR TEXT
LONGBLOB 4,294,967,295 or 4GB (2^32 − 1) 字节 VARBINARY BYTEA
LONGTEXT 4,294,967,295 or 4GB (2^32 − 1) 字符 VARCHAR TEXT
ENUM('value1','value2',...) 最多可包含65,535枚举值 VARCHAR VARCHAR(128)
SET('value1','value2',...) 最多可包含64个元素 VARCHAR VARCHAR(128)
空间类型 GEOMETRY 任意几何类型的值 VARBINARY POLYGON
POINT VARBINARY POINT
LINESTRING VARBINARY PATH
POLYGON VARBINARY POLYGON
MULTIPOINT VARBINARY POLYGON
MULTILINESTRING VARBINARY PATH
MULTIPOLYGON VARBINARY POLYGON
GEOMETRYCOLLECTION 任何几何类型的值的集合 VARBINARY POLYGON
JSON类型 JSON JSON JSON
表 2. 目标实例为DataHub、Kafka(阿里云消息队列Kafka、自建Kafka)
类型 源实例的数据类型 数值范围 DataHub的数据类型 阿里云消息队列Kafka、自建Kafka的数据类型
整数类型 BIT[(M)] 1 ~ 64 BOOLEAN | STRING 与MySQL、PolarDB MySQL的数据类型保持一致
TINYINT[(M)] -128 ~ 127 BIGINT
TINYINT[(M)] [UNSIGNED] 0 ~ 255 BIGINT
SMALLINT[(M)] -32768 ~ 32767 BIGINT
SMALLINT[(M)] [UNSIGNED] 0 ~ 65535 BIGINT
MEDIUMINT[(M)] -8388608 ~ 8388607 BIGINT
MEDIUMINT[(M)] [UNSIGNED] 0 ~ 16777215 BIGINT
INT[(M)] -2147483648 ~ 2147483647 BIGINT
INT[(M)] [UNSIGNED] 0 ~ 4294967295 BIGINT
BIGINT[(M)] -9223372036854775808 ~ 9223372036854775807 BIGINT
BIGINT[(M)] [UNSIGNED] 0 ~ 18446744073709551615 BIGINT
小数类型 DECIMAL[(M[,D])] M:0~65 ;
D:0~30
DECIMAL
FLOAT(p) 1.175494351E-38 ~ 3.402823466E+38 DOUBLE
DOUBLE[(M,D)] 2.2250738585072014E-308 ~ 1.7976931348623157E+308 DOUBLE
时间类型 DATE 1000-01-01~9999-12-31
说明 格式为YYYY-MM-DD(UTC时间)。
TIMESTAMP
DATETIME[(fsp)] 1000-01-01 00:00:00.000000 ~ 9999-12-31 23:59:59.999999
说明 格式为YYYY-MM-DD hh:mm:ss[.fraction](UTC时间)。
TIMESTAMP
TIMESTAMP[(fsp)] 1970-01-01 00:00:01.000000 ~ 2038-01-19 03:14:07.999999
说明 格式为YYYY-MM-DD hh:mm:ss[.fraction](UTC时间)。
TIMESTAMP
TIME[(fsp)] -838:59:59.000000 ~ 838:59:59.000000
说明 格式为hh:mm:ss[.fraction](UTC时间)。
STRING
YEAR[(4)] 1901 ~ 2155,或0000. STRING
字符串类型 CHAR[(M)] 0 ~ 255 字符 STRING
VARCHAR(M) 0 ~ 65,535 字符 STRING
BINARY[(M)] 0 ~ 255 字节 STRING
VARBINARY(M) 0 ~ 65,535 字节 STRING
TINYBLOB 255 (2^8 − 1) 字节 STRING
TINYTEXT 255 (2^8 − 1) 字符 STRING
BLOB 65,535 (2^16 − 1) 字节 STRING
TEXT 65,535 (2^16 − 1) 字符 STRING
MEDIUMBLOB 16,777,215 (2^24 − 1) 字节 STRING
MEDIUMTEXT 16,777,215 (2^24 − 1) 字符 STRING
LONGBLOB 4,294,967,295 or 4GB (2^32 − 1) 字节 STRING
LONGTEXT 4,294,967,295 or 4GB (2^32 − 1) 字符 STRING
ENUM('value1','value2',...) 最多可包含65,535元素 STRING
SET('value1','value2',...) 最多可包含64个元素 STRING
空间类型 GEOMETRY 任意几何类型的值 STRING
POINT STRING
LINESTRING STRING
POLYGON STRING
MULTIPOINT STRING
MULTILINESTRING STRING
MULTIPOLYGON STRING
GEOMETRYCOLLECTION 任何几何类型的值的集合 STRING
JSON类型 JSON STRING
表 3. 目标实例为MaxCompute、Elasticsearch
类型 源实例中的数据类型 数值范围 MaxCompute Elasticsearch
整数类型 BIT[(M)] 1 ~ 64 BOOLEAN | STRING BOOLEAN | LONG
说明 如果只有一个字节,建议在Elasticsearch中使用BOOLEAN。
TINYINT[(M)] -128 ~ 127 BIGINT SHORT
TINYINT[(M)] [UNSIGNED] 0 ~ 255 BIGINT INTEGER
SMALLINT[(M)] -32768 ~ 32767 BIGINT SHORT
SMALLINT[(M)] [UNSIGNED] 0 ~ 65535 BIGINT INTEGER
MEDIUMINT[(M)] -8388608 ~ 8388607 BIGINT INTEGER
MEDIUMINT[(M)] [UNSIGNED] 0 ~ 16777215 BIGINT INTEGER
INT[(M)] -2147483648 ~ 2147483647 BIGINT INTEGER
INT[(M)] [UNSIGNED] 0 ~ 4294967295 BIGINT LONG
BIGINT[(M)] -9223372036854775808 ~ 9223372036854775807 BIGINT LONG
BIGINT[(M)] [UNSIGNED] 0 ~ 18446744073709551615 BIGINT LONG
小数类型 DECIMAL[(M[,D])] M:0~65 ;
D:0~30
DOUBLE DOUBLE
说明 如果DECIMAL的值带有小数点,那么为保障数据一致性,建议在Elasticsearch中使用TEXT。
FLOAT(p) 1.175494351E-38 ~ 3.402823466E+38 DOUBLE FLOAT
DOUBLE[(M,D)] 2.2250738585072014E-308 ~ 1.7976931348623157E+308 DOUBLE DOUBLE
时间类型 DATE 1000-01-01~9999-12-31
说明 格式为YYYY-MM-DD(UTC时间)。
DATETIME DATE
说明 格式为YYYY-MM-DD(UTC时间),详情请参见 date format的mapping定义
DATETIME[(fsp)] 1000-01-01 00:00:00.000000 ~ 9999-12-31 23:59:59.999999
说明 格式为YYYY-MM-DD hh:mm:ss[.fraction](UTC时间)。
DATETIME DATE
说明 DATE格式为yyyy-MM-dd’T’HH:mm:ss(UTC时间)。如果精度为微秒,那么格式为yyyy-MM-dd’T’HH:mm:ss.S,详情请参见 date format的mapping定义
TIMESTAMP[(fsp)] 1970-01-01 00:00:01.000000 ~ 2038-01-19 03:14:07.999999
说明 格式为YYYY-MM-DD hh:mm:ss[.fraction](UTC时间)。
DATETIME DATE
说明 DATE格式为yyyy-MM-dd’T’HH:mm:ss(UTC时间)。如果精度为微秒,那么格式为yyyy-MM-dd’T’HH:mm:ss.S,详情请参见 date format的mapping定义
TIME[(fsp)] -838:59:59.000000 ~ 838:59:59.000000
说明 格式为hh:mm:ss[.fraction](UTC时间)。
STRING DATE
说明 格式为YYYY-MM-DD(UTC时间),详情请参见 date format的mapping定义
YEAR[(4)] 1901 ~ 2155,或0000. STRING DATE
说明 DATE格式为yyyy(UTC时间),详情请参见 date format的mapping定义
字符串类型 CHAR[(M)] 0 ~ 255 字符 STRING TEXT
VARCHAR(M) 0 ~ 65,535 字符 STRING TEXT
BINARY[(M)] 0 ~ 255 字节 STRING BINARY
VARBINARY(M) 0 ~ 65,535 字节 STRING BINARY
TINYBLOB 255 (2^8 − 1) 字节 STRING BINARY
TINYTEXT 255 (2^8 − 1) 字符 STRING TEXT
BLOB 65,535 (2^16 − 1) 字节 STRING BINARY
TEXT 65,535 (2^16 − 1) 字符 STRING TEXT
MEDIUMBLOB 16,777,215 (2^24 − 1) 字节 STRING BINARY
MEDIUMTEXT 16,777,215 (2^24 − 1) 字符 STRING TEXT
LONGBLOB 4,294,967,295 or 4GB (2^32 − 1) 字节 STRING BINARY
LONGTEXT 4,294,967,295 or 4GB (2^32 − 1) 字符 STRING TEXT
ENUM('value1','value2',...) 最多可包含65,535枚举值 STRING KEYWORD
SET('value1','value2',...) 最多可包含64个元素 STRING KEYWORD
空间类型 GEOMETRY 任意几何类型的值 STRING GEO_SHAPE
POINT STRING GEO_POINT
LINESTRING STRING GEO_SHAPE
POLYGON STRING GEO_SHAPE
MULTIPOINT STRING GEO_SHAPE
说明 如果只有一个字节,建议在Elasticsearch中使用BOOLEAN。
MULTILINESTRING STRING GEO_SHAPE
MULTIPOLYGON STRING GEO_SHAPE
GEOMETRYCOLLECTION 任何几何类型的值的集合 STRING GEO_SHAPE
JSON类型 JSON STRING OBJECT
说明 如果只有一个字节,建议在Elasticsearch中使用BOOLEAN。

以Oracle为源的数据同步

当源实例为自建Oracle,且目标实例为异构数据库时(包括云原生数据仓库AnalyticDB PostgreSQL版),两者间的数据类型映射关系如下:
说明 如源实例中待同步数据范围超出DTS所支持的范围,则会导致目标实例中的所写入数据的精度降低。
类型 oracle的数据类型 数值范围 云原生数据仓库AnalyticDB PostgreSQL版的数据类型
数字类型 NUMBER(p,s) 1 ~ 22 字节。
p代表精度位,取值范围是1 ~ 38。
s代表小数位,取值范围是-84 ~ 127。
DECIMAL | TINYINT | SMALLINT | INTEGER | BIGINT
FLOAT(p) 1 ~ 22 字节。
p代表指针变量,取值范围是1 ~ 126 bit。
DOUBLE PRECISION
BINARY_FLOAT 32-bit的浮点数,即4字节。 DOUBLE PRECISION
BINARY_DOUBLE 64-bit的浮点数,即8字节。 DOUBLE PRECISION
日期类型 DATE TIMESTAMP(0)
TIMESTAMP [(fractional_seconds_precision)] TIMESTAMP
TIMESTAMP [(fractional_seconds_precision)] WITH TIME ZONE TIMESTAMP WITH TIME ZONE
TIMESTAMP [(fractional_seconds_precision)] WITH LOCAL TIME ZONE TIMESTAMP WITH TIME ZONE
INTERVAL YEAR [(year_precision)] TO MONTH VARCHAR(32)
INTERVAL DAY [(day_precision)] TO SECOND [(fractional_seconds_precision)] VARCHAR(32)
字符串类型 CHAR [(size [BYTE | CHAR])] 2000 字节。 CHAR
NCHAR[(size)] 2000 字节。 VARCHAR
VARCHAR2(size [BYTE | CHAR]) 当MAX_STRING_SIZE = EXTENDED时,最大长度为32767字节;
当MAX_STRING_SIZE = STANDARD,最大长度为4000字节。
VARCHAR
NVARCHAR2(size) 当MAX_STRING_SIZE = EXTENDED时,最大长度为32767字节;
当MAX_STRING_SIZE = STANDARD,最大长度为4000字节。
VARCHAR
LONG 最大长度2G(2^31-1)。 TEXT
RAW(size) 最大长度32767 字节或2000字节。 BYTEA
LONG RAW 最大长度2G。 BYTEA
CLOB 最大长度(4 GB - 1)* DB_BLOCK_SIZE。 TEXT
NCLOB 最大长度(4 GB - 1)* DB_BLOCK_SIZE。 TEXT
BLOB 最大长度(4 GB - 1)* DB_BLOCK_SIZE。 BYTEA
BFILE 4G。 不支持
JSON类型 JSON 最大长度32MB。 JSON
ROWID类型 ROWID 64字符。 OID
空间类型 需要自定义 不支持
说明 对于云原生数据仓库AnalyticDB PostgreSQL版不支持字段类型,DTS会将其直接转为BYTEA,如果转换不了则将数据内容置为NULL。

以PostgreSQL为源的数据同步

当源实例为PostgreSQL(包括自建SQL Server、RDS PostgreSQL),且目标实例为异构数据库时(包括云原生数据仓库AnalyticDB PostgreSQL版),两者间的数据类型映射关系如下:
说明 如源实例中待同步数据范围超出DTS所支持的范围,则会导致目标实例中的所写入数据的精度降低。
类型 PostgreSQL的数据类型 数值范围 云原生数据仓库AnalyticDB PostgreSQL版的数据类型
整数类型 SMALLINT -32767至+32767 SMALLINT
INTEGER -2147483648至 +2147483647 INTEGER
BIGINT -9223372036854775808至+9223372036854775807 BIGINT
小数类型 DECIMAL 最高小数点前131072位,以及小数点后16383位 DECIMAL
NUMERIC 最高小数点前131072位,以及小数点后16383位 NUMERIC
REAL 6位十进制精度 REAL
DOUBLE PRECISION 15位十进制精度 DOUBLE PRECISION
货币类型 MONEY -92233720368547758.08至+92233720368547758.07 MONEY
字符串类型 CHARACTER VARYING(n) CHARACTER VARYING(n)
CHARACTER(n) CHARACTER(n)
TEXT TEXT
CHAR 默认为1字节 CHAR
NAME 最大长度为64字节 NAME
文本搜索类型 TSQUERY 表示一个文本查询 TEXT
TSVECTOR 表示一个为文本搜索优化的形式下的文档 TEXT
二进制数据类型 BYTEA 1或4字节外加真正的二进制串 BYTEA
日期类型 TIMESTAMP [ (p) ] [ WITHOUT TIME ZONE ] 表示日期和时间(无时区),占用8字节 TIMESTAMP [ (p) ] [ WITHOUT TIME ZONE ]
TIMESTAMP [ (p) ] WITH TIME ZONE 表示日期和时间(有时区),占用8字节 TIMESTAMP [ (p) ] WITH TIME ZONE
DATE 表示日期,占用4字节 DATE
TIME [ (p) ] [ WITHOUT TIME ZONE ] 表示时间(无时区),占用8字节 TIME [ (p) ] [ WITHOUT TIME ZONE ]
TIME [ (p) ] WITH TIME ZONE 表示时间(有时区),占用12字节 TIME [ (p) ] WITH TIME ZONE
interval [ fields ] [ (p) ] 表示时间间隔,占用16字节 interval [ fields ] [ (p) ]
布尔类型 BOOLEAN 1字节 BOOLEAN
枚举类型 自定义枚举 VARCHAR(128)
空间类型 POINT 平面上的点,,最大长度为16字节 POINT
LINE 无限长的线,最大长度为32字节 LINE
LSEG 有限线段,最大长度为32字节 LSEG
BOX 矩形框,最大长度为32字节 BOX
PATH 路径,最大长度为16+16n字节 PATH
POLYGON 多边形(类似于封闭路径) ,最大长度为40+16n字节 POLYGON
CIRCLE 圆,最大长度为24字节 CIRCLE
网络地址类型 CIDR IPv4和IPv6网络,最大长度为7或19字节 CIDR
INET IPv4和IPv6主机以及网络,最大长度为7或19字节 INET
MACADDR MAC地址,最大长度为6字节 MACADDR
MACADDR8 MAC地址(EUI-64格式),最大长度为8 字节 MACADDR8
位串类型 Bit (n) Bit (n)
BIT VARYING (n) BIT VARYING (n)
UUID类型 UUID VARCHAR(64)
XML类型 XML XML
JSON类型 JSON JSON
JSONB JSONB

以SQL Server为源的数据同步

当源实例为SQL Server(包括自建SQL Server、RDS SQL Server),且目标实例为异构数据库时(包括云原生数据仓库AnalyticDB MySQL版 、云原生数据仓库AnalyticDB PostgreSQL版),两者间的数据类型映射关系如下:
说明 如源实例中待同步数据范围超出DTS所支持的范围,则会导致目标实例中的所写入数据的精度降低。
类型 SQL Server的数据类型 数值范围 云原生数据仓库AnalyticDB MySQL版的数据类型 云原生数据仓库AnalyticDB PostgreSQL版的数据类型
整数类型 BIT 可以取值为1、0或NULL的INTEGER数据类型 BOOLEAN BIT(1)
TINYINT 0至255 TINYINT SMALLINT
SMALLINT -2^15(-32,768)至2^15-1(32,767) SMALLINT SMALLINT
INT -2^31(-2,147,483,648)至2^31-1(2,147,483,647) INTEGER INTEGER
BIGINT -2^63(-9,223,372,036,854,775,808)至2^63-1(9,223,372,036,854,775,807) BIGINT BIGINT
小数类型 NUMERIC[ (p[ ,s] )] -10^38+1至10^38-1; 1<=p<=38 DECIMAL DECIMAL
DECIMAL[ (p[ ,s] )] -10^38+1至10^38-1; 1<= p<=38 DECIMAL DECIMAL
FLOAT -1.79E+308至-2.23E -308、0 以及2.23E-308至1.79E+308 DOUBLE DOUBLE PRECISION
REAL -3.40E+38至-1.18E- 38、0 以及1.18E-38至3.40E +38 FLOAT REAL
货币类型 MONEY -922,337,203,685,477.5808至922,337,203,685,477.5807 DECIMAL(19, 4) DECIMAL(19, 4)
SMALLMONEY -214,748.3648至214,748.3647 DECIMAL(10, 4) DECIMAL(10, 4)
日期类型 DATE 0001-01-01至9999-12-31 DATE DATE
DATETIME 日期范围为1753年1月1日至9999年12月31日;
时间范围为00:00:00至 23:59:59.997
DATETIME TIMESTAMP(3) WITHOUT TIME ZONE
DATETIME2[ (fractional seconds precision) ] 日期范围为公元1年1月1日至公元9999年12月31日;
时间范围为00:00:00至23:59:59.9999999
DATETIME TIMESTAMP(7) WITHOUT TIME ZONE
DATETIMEOFFSET [ (fractional seconds precision) ] 日期范围公元1年1月1日至公元9999年12月31日;
时间范围为00:00:00至 23:59:59.9999999;
时区偏移量范围-14:00至+14:00
TIMESTAMP TIMESTAMP(7) WITH TIME ZONE
SMALLDATETIME 秒始终为零 (:00),并且不带秒小数部分 DATETIME TIMESTAMP WITHOUT TIME ZONE
TIME [ (fractional second scale) ] 00:00:00.0000000至23:59:59.9999999 TIME TIME(7) WITH TIME ZONE
字符串类型 BINARY [ ( n ) ] n取值范围为1~8,000 VARBINARY BYTEA
VARBINARY [ ( n | max) ] n取值范围为1~8,000;max代表最大存储大小是2^31-1 个字节 VARBINARY BYTEA
CHAR [ ( n ) ] n取值范围为1~8,000,存储大小为n个字节 VARCHAR CHARACTER
VARCHAR [ ( n | max ) ] n取值范围为1~8,000;max代表最大存储大小是 2^31-1 个字节(2GB) VARCHAR CHARACTER
NCHAR [ ( n ) ] 以双字节为单位,n 取值范围为1至4,000,存储大小为 n字节的两倍 VARCHAR CHARACTER VARYING
NVARCHAR [ ( n | max ) ] 以双字节为单位,n取值范围为1至4,000,max代表最大存储大小是2^30-1个字符(2 GB) VARCHAR CHARACTER VARYING
NTEXT 长度可变的Unicode 数据,字符串最大长度为2^30-1(1,073,741,823)个字节 VARCHAR TEXT
TEXT 字符串最大长度为2^31-1(2,147,483,647)个字节 VARCHAR TEXT
IMAGE 长度可变的二进制数据,从0到2^31-1 (2,147,483,647)个字节。 VARBINARY BYTEA
空间和几何类型 GEOGRAPHY VARCHAR 不支持
GEOMETRY VARCHAR 不支持
XML类型 XML ( [ CONTENT | DOCUMENT ] xml_schema_collection ) VARCHAR XML
其它类型 UNIQUEIDENTIFIER VARCHAR CHARACTER(36)
SQL_VARIANT 不支持 不支持
HIERARCHYID 不支持 不支持
SYSNAME VARCHAR CHARACTER VARYING(128)

以DB2 for LUW为源的数据同步

当源实例为DB2 for LUW,且目标实例为异构数据库时(包括MySQL),两者间的数据类型映射关系如下:
说明 如源实例中待同步数据范围超出DTS所支持的范围,则会导致目标实例中的所写入数据的精度降低。
类型 DB2 for LUW数据类型 数值范围 MySQL的数据类型
整数类型 SMALLINT -32,768~+32,767 SMALLINT
INTEGER -2,147,483,648~+2,147,483,647 INT
BIGINT -9,223,372,036,854,775,808~ +9,223,372,036,854,775,807 BIGINT
小数类型 DECIMAL(precision-integer, scale-integer) p<=38 DECIMAL
FLOAT(integer) 取值范围为1~53,取值在1~24表示为单精度,取值在25~53表示为双精度 FLOAT
DECFLOAT(precision-integer) DECIMAL(65,10)
日期类型 DATE 0001-01-01~9999-12-31 DATE
TIME 00:00:00~24:00:00 TIME
TIMESTAMP(integer) 0001-01-01-00.00.00.000000000000~9999-12-31-24.00.00.000000000000;0<=p<= 12 DATETIME
字符串类型 CHARACTER(integer) 254 CHAR | VARCHAR
VARCHAR(integer) 32,672 VARCHAR
CHARACTER(integer) FOR BIT DATA 254 BLOB
CLOB 2,147,483,647 LONGTEXT
GRAPHIC(integer) 127 CHAR(length*4)
VARGRAPHIC(integer) 16,336 CHAR(length*4)
DBCLOB(integer) 1,073,741,823 VARCHAR | LONGTEXT
BLOB 2,147,483,647 LONGBLOB
其它类型 XML 2,147,483,647 VARCHAR | LONGTEXT

以Db2 for i为源的数据同步

当源实例为DB2 for i,且目标实例为异构数据库时(包括MySQL),两者间的数据类型映射关系如下:
说明 如源实例中待同步数据范围超出DTS所支持的范围,则会导致目标实例中的所写入数据的精度降低。
类型 Db2 for i数据类型 数值范围 MySQL中的数据类型
整数类型 SMALLINT -32,768~+32,767 SMALLINT
INTEGER -2,147,483,648~+2,147,483,647 INT
BIGINT -9,223,372,036,854,775,808~ +9,223,372,036,854,775,807 BIGINT
小数类型 DECIMAL(precision-integer, scale-integer) p<=63 DECIMAL
NUMERIC DECIMAL
FLOAT(integer) FLOAT
DECFLOAT(precision-integer) DECIMAL(65,10)
日期类型 DATE 0001-01-0~9999-12-31 DATE
TIME 00:00:00~24:00:00 TIME
TIMESTAMP(integer) 0001-01-01-00.00.00.000000000000~9999-12-31-24.00.00.000000000000;0 <=p <=12 DATETIME
字符串类型 CHAR(integer) 32,765 CHAR | VARCHAR
VARCHAR(integer) 32,739 VARCHAR
CHAR(integer) FOR BIT DATA BLOB
CLOB 2,147,483,647 LONGTEXT
GRAPHIC(integer) 16,382 CHAR
VARGRAPHIC(integer) 16,369 VARCHAR
DBCLOB(integer) 1,073,741,823 LONGTEXT
BINARY 32,765 BINARY
VARBIN 32,739 VARBINARY
BLOB 2,147,483,647 LONGBLOB
其它类型 DATALINK VARCHAR | LONGTEXT
ROWID 40 VARCHAR | LONGTEXT
XML 2,147,483,647 VARCHAR | LONGTEXT