Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
var CanonicalToMSSQLTypes = map[string]string{
"bool": "BIT",
"boolean": "BIT",
"int8": "TINYINT",
"int16": "SMALLINT",
"int": "INT",
"int32": "INT",
"int64": "BIGINT",
"uint": "BIGINT",
"uint8": "TINYINT",
"uint16": "SMALLINT",
"uint32": "BIGINT",
"uint64": "BIGINT",
"integer": "INT",
"smallint": "SMALLINT",
"bigint": "BIGINT",
"tinyint": "TINYINT",
"serial": "INT",
"smallserial": "SMALLINT",
"bigserial": "BIGINT",
"float32": "REAL",
"float64": "FLOAT",
"real": "REAL",
"double precision": "FLOAT",
"double": "FLOAT",
"decimal": "NUMERIC",
"numeric": "NUMERIC",
"money": "MONEY",
"string": "NVARCHAR(255)",
"text": "NVARCHAR(MAX)",
"varchar": "NVARCHAR(255)",
"char": "NCHAR",
"nvarchar": "NVARCHAR(255)",
"nchar": "NCHAR",
"citext": "NVARCHAR(MAX)",
"date": "DATE",
"time": "TIME",
"timetz": "DATETIMEOFFSET",
"timestamp": "DATETIME2",
"timestamptz": "DATETIMEOFFSET",
"datetime": "DATETIME2",
"interval": "NVARCHAR(50)",
"uuid": "UNIQUEIDENTIFIER",
"json": "NVARCHAR(MAX)",
"jsonb": "NVARCHAR(MAX)",
"bytea": "VARBINARY(MAX)",
"blob": "VARBINARY(MAX)",
"xml": "XML",
"inet": "NVARCHAR(45)",
"cidr": "NVARCHAR(43)",
"macaddr": "NVARCHAR(17)",
}
CanonicalToMSSQLTypes maps canonical types to MSSQL types. Accepts both Go canonical names ("int", "string") and SQL canonical names ("integer", "varchar") so the writer handles input from any reader.
var MSSQLToCanonicalTypes = map[string]string{
"bit": "bool",
"tinyint": "int8",
"smallint": "int16",
"int": "int",
"integer": "int",
"bigint": "int64",
"real": "float32",
"float": "float64",
"numeric": "decimal",
"decimal": "decimal",
"money": "decimal",
"smallmoney": "decimal",
"nvarchar": "string",
"nchar": "string",
"varchar": "string",
"char": "string",
"text": "string",
"ntext": "string",
"date": "date",
"time": "time",
"datetime": "timestamp",
"datetime2": "timestamp",
"smalldatetime": "timestamp",
"datetimeoffset": "timestamptz",
"uniqueidentifier": "uuid",
"varbinary": "bytea",
"binary": "bytea",
"image": "bytea",
"xml": "string",
"json": "json",
"sql_variant": "string",
"hierarchyid": "string",
"geography": "string",
"geometry": "string",
}
MSSQLToCanonicalTypes maps MSSQL types to canonical types
var MSSQLTypeSynonyms = map[string]string{
"integer": "int",
"dec": "decimal",
"float(n)": "float",
}
MSSQLTypeSynonyms maps MSSQL type aliases to their canonical MSSQL name.
Functions ¶
func ConvertCanonicalToMSSQL ¶
ConvertCanonicalToMSSQL converts a canonical type (Go or SQL) to an MSSQL type. Strips dimension parameters before lookup. Defaults to NVARCHAR(255) for unknown types.
func ConvertMSSQLToCanonical ¶
ConvertMSSQLToCanonical converts an MSSQL type to the canonical type. Strips dimension parameters before lookup. Defaults to "string" for unknown types.
func NormalizeMSSQLType ¶ added in v1.0.58
NormalizeMSSQLType maps an MSSQL base type (no dimension parameters) to its canonical MSSQL form. Unknown types are returned as-is (lowercased).
Types ¶
This section is empty.