From f8e86e37454356594741fa5975aef2052623e601 Mon Sep 17 00:00:00 2001 From: Liam Staskawicz Date: Sun, 30 Jun 2013 11:38:24 -0700 Subject: [PATCH] migration: allow database/sql to do type conversion to avoid dialect differences --- migration_go.go | 6 ++---- migration_sql.go | 5 ++--- 2 files changed, 4 insertions(+), 7 deletions(-) diff --git a/migration_go.go b/migration_go.go index 43e29e5..4f0d525 100644 --- a/migration_go.go +++ b/migration_go.go @@ -76,7 +76,6 @@ import ( "database/sql" _ "{{.Driver.Import}}" "log" - "fmt" ) func main() { @@ -94,9 +93,8 @@ func main() { {{ .Func }}(txn) // XXX: drop goose_db_version table on some minimum version number? - versionFmt := "INSERT INTO goose_db_version (version_id, is_applied) VALUES (%v, %t);" - versionStmt := fmt.Sprintf(versionFmt, int64({{ .Version }}), {{ .Direction }}) - if _, err = txn.Exec(versionStmt); err != nil { + stmt := "INSERT INTO goose_db_version (version_id, is_applied) VALUES ($1, $2);" + if _, err = txn.Exec(stmt, {{ .Version }}, {{ .Direction }}); err != nil { txn.Rollback() log.Fatal("failed to write version: ", err) } diff --git a/migration_sql.go b/migration_sql.go index fc68d08..fbaf3a7 100644 --- a/migration_sql.go +++ b/migration_sql.go @@ -2,7 +2,6 @@ package main import ( "database/sql" - "fmt" "io/ioutil" "log" "path/filepath" @@ -84,8 +83,8 @@ func runSQLMigration(db *sql.DB, script string, v int64, direction bool) error { func finalizeMigration(txn *sql.Tx, direction bool, v int64) error { // XXX: drop goose_db_version table on some minimum version number? - versionStmt := fmt.Sprintf("INSERT INTO goose_db_version (version_id, is_applied) VALUES (%d, %t);", v, direction) - if _, err := txn.Exec(versionStmt); err != nil { + stmt := "INSERT INTO goose_db_version (version_id, is_applied) VALUES ($1, $2)" + if _, err := txn.Exec(stmt, v, direction); err != nil { txn.Rollback() return err }