jerry:add postgre data_type array (#1589)
fix err,add postgres column ARRAY fix err,add postgres column ARRAY Co-authored-by: Jerry <85411418@qq.com> Reviewed-on: https://gitea.com/xorm/xorm/pulls/1589 Reviewed-by: Lunny Xiao <xiaolunwen@gmail.com>
This commit is contained in:
parent
9d4594632f
commit
2f95c750c3
|
@ -1099,6 +1099,8 @@ WHERE c.relkind = 'r'::char AND c.relname = $1%s AND f.attnum > 0 ORDER BY f.att
|
||||||
col.SQLType = schemas.SQLType{Name: schemas.Binary, DefaultLength: 0, DefaultLength2: 0}
|
col.SQLType = schemas.SQLType{Name: schemas.Binary, DefaultLength: 0, DefaultLength2: 0}
|
||||||
case "oid":
|
case "oid":
|
||||||
col.SQLType = schemas.SQLType{Name: schemas.BigInt, DefaultLength: 0, DefaultLength2: 0}
|
col.SQLType = schemas.SQLType{Name: schemas.BigInt, DefaultLength: 0, DefaultLength2: 0}
|
||||||
|
case "array":
|
||||||
|
col.SQLType = schemas.SQLType{Name: schemas.Array, DefaultLength: 0, DefaultLength2: 0}
|
||||||
default:
|
default:
|
||||||
startIdx := strings.Index(strings.ToLower(dataType), "string(")
|
startIdx := strings.Index(strings.ToLower(dataType), "string(")
|
||||||
if startIdx != -1 && strings.HasSuffix(dataType, ")") {
|
if startIdx != -1 && strings.HasSuffix(dataType, ")") {
|
||||||
|
|
|
@ -34,6 +34,7 @@ const (
|
||||||
BLOB_TYPE
|
BLOB_TYPE
|
||||||
TIME_TYPE
|
TIME_TYPE
|
||||||
NUMERIC_TYPE
|
NUMERIC_TYPE
|
||||||
|
ARRAY_TYPE
|
||||||
)
|
)
|
||||||
|
|
||||||
func (s *SQLType) IsType(st int) bool {
|
func (s *SQLType) IsType(st int) bool {
|
||||||
|
@ -59,6 +60,10 @@ func (s *SQLType) IsNumeric() bool {
|
||||||
return s.IsType(NUMERIC_TYPE)
|
return s.IsType(NUMERIC_TYPE)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (s *SQLType) IsArray() bool {
|
||||||
|
return s.IsType(ARRAY_TYPE)
|
||||||
|
}
|
||||||
|
|
||||||
func (s *SQLType) IsJson() bool {
|
func (s *SQLType) IsJson() bool {
|
||||||
return s.Name == Json || s.Name == Jsonb
|
return s.Name == Json || s.Name == Jsonb
|
||||||
}
|
}
|
||||||
|
@ -123,6 +128,8 @@ var (
|
||||||
Json = "JSON"
|
Json = "JSON"
|
||||||
Jsonb = "JSONB"
|
Jsonb = "JSONB"
|
||||||
|
|
||||||
|
Array = "ARRAY"
|
||||||
|
|
||||||
SqlTypes = map[string]int{
|
SqlTypes = map[string]int{
|
||||||
Bit: NUMERIC_TYPE,
|
Bit: NUMERIC_TYPE,
|
||||||
TinyInt: NUMERIC_TYPE,
|
TinyInt: NUMERIC_TYPE,
|
||||||
|
@ -180,6 +187,8 @@ var (
|
||||||
|
|
||||||
Serial: NUMERIC_TYPE,
|
Serial: NUMERIC_TYPE,
|
||||||
BigSerial: NUMERIC_TYPE,
|
BigSerial: NUMERIC_TYPE,
|
||||||
|
|
||||||
|
Array: ARRAY_TYPE,
|
||||||
}
|
}
|
||||||
|
|
||||||
intTypes = sort.StringSlice{"*int", "*int16", "*int32", "*int8"}
|
intTypes = sort.StringSlice{"*int", "*int16", "*int32", "*int8"}
|
||||||
|
|
Loading…
Reference in New Issue