Skip to content

Commit

Permalink
Specify database dialect when open database, fixes go-gorm#169
Browse files Browse the repository at this point in the history
  • Loading branch information
jinzhu committed Aug 5, 2014
1 parent 943a873 commit 4d98c8c
Showing 1 changed file with 19 additions and 4 deletions.
23 changes: 19 additions & 4 deletions main.go
Original file line number Diff line number Diff line change
Expand Up @@ -23,11 +23,26 @@ type DB struct {
source string
}

func Open(driver, source string) (DB, error) {
func Open(dialect string, drivesources ...string) (DB, error) {
var db DB
var err error
db := DB{dialect: NewDialect(driver), tagIdentifier: "sql", logger: defaultLogger, callback: DefaultCallback, source: source}
db.db, err = sql.Open(driver, source)
db.parent = &db
var driver = dialect
var source string

if len(drivesources) == 0 {
err = errors.New("invalid database source")
} else {
if len(drivesources) == 1 {
source = drivesources[0]
} else if len(drivesources) >= 2 {
driver = drivesources[0]
source = drivesources[1]
}

db = DB{dialect: NewDialect(dialect), tagIdentifier: "sql", logger: defaultLogger, callback: DefaultCallback, source: source}
db.db, err = sql.Open(driver, source)
db.parent = &db
}
return db, err
}

Expand Down

0 comments on commit 4d98c8c

Please sign in to comment.