fix selecting dialect (#692)

pull/696/head
MURAOKA Yusuke 2024-02-03 09:22:21 +09:00 committed by GitHub
parent 81fb552020
commit 8712ba69e6
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 7 additions and 9 deletions

View File

@ -130,15 +130,6 @@ func main() {
}
driver, dbstring, command := args[0], args[1], args[2]
// To avoid breaking existing consumers. An implementation detail
// that consumers should not care which underlying driver is used.
switch driver {
case "sqlite3":
// Internally uses the CGo-free port of SQLite: modernc.org/sqlite
driver = "sqlite"
case "postgres", "redshift":
driver = "pgx"
}
db, err := goose.OpenDBWithDriver(driver, normalizeDBString(driver, dbstring, *certfile, *sslcert, *sslkey))
if err != nil {
log.Fatalf("-dbstring=%q: %v\n", dbstring, err)

7
db.go
View File

@ -12,6 +12,8 @@ func OpenDBWithDriver(driver string, dbstring string) (*sql.DB, error) {
return nil, err
}
// To avoid breaking existing consumers. An implementation detail
// that consumers should not care which underlying driver is used.
switch driver {
case "mssql":
driver = "sqlserver"
@ -19,6 +21,11 @@ func OpenDBWithDriver(driver string, dbstring string) (*sql.DB, error) {
driver = "mysql"
case "turso":
driver = "libsql"
case "sqlite3":
// Internally uses the CGo-free port of SQLite: modernc.org/sqlite
driver = "sqlite"
case "postgres", "redshift":
driver = "pgx"
}
switch driver {