* fix #1376

* fix #1376

Co-authored-by: anqiansong <anqiansong@bytedance.com>
This commit is contained in:
anqiansong
2021-12-28 16:40:26 +08:00
committed by GitHub
parent 78ba00d3a7
commit 49bab23c54

View File

@@ -10,8 +10,7 @@ import (
var commonMysqlDataTypeMapInt = map[int]string{ var commonMysqlDataTypeMapInt = map[int]string{
// For consistency, all integer types are converted to int64 // For consistency, all integer types are converted to int64
// number // number
parser.Bool: "int64", parser.Bit: "byte",
parser.Boolean: "int64",
parser.TinyInt: "int64", parser.TinyInt: "int64",
parser.SmallInt: "int64", parser.SmallInt: "int64",
parser.MediumInt: "int64", parser.MediumInt: "int64",
@@ -29,6 +28,10 @@ var commonMysqlDataTypeMapInt = map[int]string{
parser.Float8: "float64", parser.Float8: "float64",
parser.Double: "float64", parser.Double: "float64",
parser.Decimal: "float64", parser.Decimal: "float64",
parser.Dec: "float64",
parser.Fixed: "float64",
parser.Numeric: "float64",
parser.Real: "float64",
// date&time // date&time
parser.Date: "time.Time", parser.Date: "time.Time",
parser.DateTime: "time.Time", parser.DateTime: "time.Time",
@@ -38,6 +41,12 @@ var commonMysqlDataTypeMapInt = map[int]string{
// string // string
parser.Char: "string", parser.Char: "string",
parser.VarChar: "string", parser.VarChar: "string",
parser.NVarChar: "string",
parser.NChar: "string",
parser.Character: "string",
parser.LongVarChar: "string",
parser.LineString: "string",
parser.MultiLineString: "string",
parser.Binary: "string", parser.Binary: "string",
parser.VarBinary: "string", parser.VarBinary: "string",
parser.TinyText: "string", parser.TinyText: "string",
@@ -51,22 +60,37 @@ var commonMysqlDataTypeMapInt = map[int]string{
parser.LongBlob: "string", parser.LongBlob: "string",
parser.MediumBlob: "string", parser.MediumBlob: "string",
parser.TinyBlob: "string", parser.TinyBlob: "string",
// bool
parser.Bool: "bool",
parser.Boolean: "bool",
} }
var commonMysqlDataTypeMapString = map[string]string{ var commonMysqlDataTypeMapString = map[string]string{
// For consistency, all integer types are converted to int64 // For consistency, all integer types are converted to int64
// bool
"bool": "bool",
"boolean": "bool",
// number // number
"bool": "int64",
"boolean": "int64",
"tinyint": "int64", "tinyint": "int64",
"smallint": "int64", "smallint": "int64",
"mediumint": "int64", "mediumint": "int64",
"int": "int64", "int": "int64",
"int1": "int64",
"int2": "int64",
"int3": "int64",
"int4": "int64",
"int8": "int64",
"integer": "int64", "integer": "int64",
"bigint": "int64", "bigint": "int64",
"float": "float64", "float": "float64",
"float4": "float64",
"float8": "float64",
"double": "float64", "double": "float64",
"decimal": "float64", "decimal": "float64",
"dec": "float64",
"fixed": "float64",
"real": "float64",
"bit": "byte",
// date & time // date & time
"date": "time.Time", "date": "time.Time",
"datetime": "time.Time", "datetime": "time.Time",
@@ -74,10 +98,16 @@ var commonMysqlDataTypeMapString = map[string]string{
"time": "string", "time": "string",
"year": "int64", "year": "int64",
// string // string
"linestring": "string",
"multilinestring": "string",
"nvarchar": "string",
"nchar": "string",
"char": "string", "char": "string",
"character": "string",
"varchar": "string", "varchar": "string",
"binary": "string", "binary": "string",
"bytea": "string", "bytea": "string",
"longvarbinary": "string",
"varbinary": "string", "varbinary": "string",
"tinytext": "string", "tinytext": "string",
"text": "string", "text": "string",