Incorrect ColumnType Nullable default
- Dominant language
- Go
- Stars
- 231
- Forks
- 217
- PR merge metrics
- No merged PRs in 30d
Description
## Description
Sqlite coumns that are neither `NOT NULL` or `NULL` are nullable by default. However, `.Nullable()` defaults to false and is only set `true` if the `CREATE TABLE` sql explicitly denotes the column as `NULL`
https://github.com/go-gorm/sqlite/blob/397ec6fa8c64060db1dd392675cf51ab919c4c3c/ddlmod.go#L122
```
columnType := migrator.ColumnType{
NullableValue: sql.NullBool{Valid: true}, //<--- .Bool implicitly false, i.e. NOT NULL
}
matchUpper := strings.ToUpper(matches[3])
if strings.Contains(matchUpper, " NOT NULL") {
columnType.NullableValue = sql.NullBool{Bool: false, Valid: true}
} else if strings.Contains(matchUpper, " NULL") {
columnType.NullableValue = sql.NullBool{Bool: true, Valid: true}
}
...
```
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.