Open
Description
Inserting single struct without providing columns names in sql works properly:
https://github.com/graaphscom/dbmigrat/blob/7bcb3998b1160ab1a7cd72eeccdfd4d092ae16c1/integrity_test.go#L38-L47
_, err := db.NamedExec(
`insert into dbmigrat_log values (:idx, :repo, :migration_serial, :checksum, default, :description)`,
migrationLog{
Idx: 0,
Repo: "repo1",
MigrationSerial: 0,
Checksum: fmt.Sprintf("%x", sha1.Sum([]byte(upSql))),
Description: "example migration",
},
)
But inserting array of structs without providing columns names will end with error got 15 parameters but the statement requires 5
. Adding columns names to the sql solves error:
https://github.com/graaphscom/dbmigrat/blob/7bcb3998b1160ab1a7cd72eeccdfd4d092ae16c1/integrity_test.go#L85-L90
_, err := db.NamedExec(`
insert into dbmigrat_log (idx, repo, migration_serial, checksum, applied_at, description)
values (:idx, :repo, :migration_serial, :checksum, default, :description)
`,
[]migrationLog{invalidChecksum, redundantMigration, redundantRepo},
)
Metadata
Metadata
Assignees
Labels
No labels