119 lines
1.7 KiB
Go
119 lines
1.7 KiB
Go
package main
|
|
|
|
const (
|
|
_ int = iota
|
|
LongVarBinary
|
|
LongVarChar
|
|
GeometryCollection
|
|
GeomCollection
|
|
LineString
|
|
MultiLineString
|
|
MultiPoint
|
|
MultiPolygon
|
|
Point
|
|
Polygon
|
|
Json
|
|
Geometry
|
|
Enum
|
|
Set
|
|
Bit
|
|
Time
|
|
Timestamp
|
|
DateTime
|
|
Binary
|
|
VarBinary
|
|
Blob
|
|
Year
|
|
Decimal
|
|
Dec
|
|
Fixed
|
|
Numeric
|
|
Float
|
|
Float4
|
|
Float8
|
|
Double
|
|
Real
|
|
TinyInt
|
|
SmallInt
|
|
MediumInt
|
|
Int
|
|
Integer
|
|
BigInt
|
|
MiddleInt
|
|
Int1
|
|
Int2
|
|
Int3
|
|
Int4
|
|
Int8
|
|
Date
|
|
TinyBlob
|
|
MediumBlob
|
|
LongBlob
|
|
Bool
|
|
Boolean
|
|
Serial
|
|
NVarChar
|
|
NChar
|
|
Char
|
|
Character
|
|
VarChar
|
|
TinyText
|
|
Text
|
|
MediumText
|
|
LongText
|
|
)
|
|
|
|
var SQLTypeToGoTypeMap = map[int]string{
|
|
LongVarBinary: "[]byte",
|
|
Binary: "[]byte",
|
|
VarBinary: "[]byte",
|
|
Blob: "[]byte",
|
|
TinyBlob: "[]byte",
|
|
MediumBlob: "[]byte",
|
|
LongBlob: "[]byte",
|
|
|
|
LongVarChar: "*string",
|
|
NVarChar: "*string",
|
|
NChar: "*string",
|
|
Char: "*string",
|
|
Character: "*string",
|
|
VarChar: "*string",
|
|
TinyText: "*string",
|
|
Text: "*string",
|
|
MediumText: "*string",
|
|
LongText: "*string",
|
|
|
|
Time: "*time.Time",
|
|
Timestamp: "*time.Time",
|
|
DateTime: "*time.Time",
|
|
Date: "*time.Time",
|
|
|
|
Year: "*int64",
|
|
TinyInt: "*int64",
|
|
SmallInt: "*int64",
|
|
MediumInt: "*int64",
|
|
Int: "*int64",
|
|
Integer: "*int64",
|
|
BigInt: "*int64",
|
|
MiddleInt: "*int64",
|
|
Int1: "*int64",
|
|
Int2: "*int64",
|
|
Int3: "*int64",
|
|
Int4: "*int64",
|
|
Int8: "*int64",
|
|
Serial: "*int64",
|
|
|
|
Decimal: "*float64",
|
|
Dec: "*float64",
|
|
Fixed: "*float64",
|
|
Numeric: "*float64",
|
|
Float: "*float64",
|
|
Float4: "*float64",
|
|
Float8: "*float64",
|
|
Double: "*float64",
|
|
Real: "*float64",
|
|
|
|
Bool: "*bool",
|
|
Boolean: "*bool",
|
|
}
|