diff --git a/dialect_postgres.go b/dialect_postgres.go index 18cbe028..09ac5961 100644 --- a/dialect_postgres.go +++ b/dialect_postgres.go @@ -45,6 +45,10 @@ func (postgres) DataTypeOf(field *StructField) string { case reflect.Float32, reflect.Float64: sqlType = "numeric" case reflect.String: + if _, ok := field.TagSettings["SIZE"]; !ok { + size = 0 // if SIZE haven't been set, use `text` as the default type, as there are no performance different + } + if size > 0 && size < 65532 { sqlType = fmt.Sprintf("varchar(%d)", size) } else {