跳到主要内容
最后 更新

数据类型映射

下表展示上游 MySQL 的每个列类型如何映射为 Doris 列类型。只有一套映射,两种同步方式共用,区别只在于由谁创建目标表:

  • 自动建表同步:Doris 读取上游表结构,自动按这些 Doris 列类型创建目标表。
  • SQL 映射同步:你自己创建目标表,每列使用兼容的 Doris 类型。

两种方式下,写入的值都遵循同一套映射。不支持的类型请参见使用限制

MySQL 到 Doris

MySQL 类型Doris 类型备注
BOOLEAN / TINYINT(1)BOOLEAN
TINYINTTINYINTUNSIGNEDSMALLINT
SMALLINTSMALLINTUNSIGNEDINT
MEDIUMINTINTUNSIGNEDINT
INTINTUNSIGNEDBIGINT
BIGINTBIGINTUNSIGNEDLARGEINT
YEARSMALLINT
FLOATFLOAT
DOUBLEDOUBLE
DECIMAL(p,s)DECIMAL(p,s)超高精度回退为 STRING
DATEDATE
DATETIMEDATETIME(s)保留微秒精度(0–6)
TIMESTAMPDATETIME(s)按 server 时区归一
TIMESTRING以字符串存储,如 12:34:56.000000
CHARCHAR
VARCHARVARCHAR
TINYTEXT / TEXT / MEDIUMTEXT / LONGTEXTSTRING
BINARY / VARBINARY / TINYBLOB / BLOB / MEDIUMBLOB / LONGBLOBSTRINGBase64 编码字符串
BIT(1)BOOLEAN
BIT(n>1)STRINGBase64 编码字符串
JSONSTRING以 JSON 文本存储
ENUMSTRING解析为标签值
SETSTRING解析为逗号分隔的标签
空间类型(GEOMETRYPOINT 等)及其他类型不支持含此类列的表自动建表会失败;可改用 SQL 映射同步(在 SELECT 中转换)或排除该列