From f9c968d98a17137732c1f5e34d55e4e5f2b14726 Mon Sep 17 00:00:00 2001 From: Lunny Xiao Date: Tue, 19 May 2015 22:39:50 +0800 Subject: [PATCH] dialect interface changed --- engine.go | 2 +- mssql_dialect.go | 4 ++-- oracle_dialect.go | 4 ++-- postgres_dialect.go | 4 ++-- sqlite3_dialect.go | 4 ++-- 5 files changed, 9 insertions(+), 9 deletions(-) diff --git a/engine.go b/engine.go index 02099295..fa852bad 100644 --- a/engine.go +++ b/engine.go @@ -1114,7 +1114,7 @@ func (engine *Engine) Sync(beans ...interface{}) error { session := engine.NewSession() session.Statement.RefTable = table defer session.Close() - isExist, err := session.Engine.dialect.IsColumnExist(table.Name, col) + isExist, err := session.Engine.dialect.IsColumnExist(table.Name, col.Name) if err != nil { return err } diff --git a/mssql_dialect.go b/mssql_dialect.go index a910406b..57985ad9 100644 --- a/mssql_dialect.go +++ b/mssql_dialect.go @@ -315,10 +315,10 @@ func (db *mssql) IndexCheckSql(tableName, idxName string) (string, []interface{} return sql, args }*/ -func (db *mssql) IsColumnExist(tableName string, col *core.Column) (bool, error) { +func (db *mssql) IsColumnExist(tableName, colName string) (bool, error) { query := `SELECT "COLUMN_NAME" FROM "INFORMATION_SCHEMA"."COLUMNS" WHERE "TABLE_NAME" = ? AND "COLUMN_NAME" = ?` - return db.HasRecords(query, tableName, col.Name) + return db.HasRecords(query, tableName, colName) } func (db *mssql) TableCheckSql(tableName string) (string, []interface{}) { diff --git a/oracle_dialect.go b/oracle_dialect.go index b4f89edf..dc64c00e 100644 --- a/oracle_dialect.go +++ b/oracle_dialect.go @@ -665,8 +665,8 @@ func (db *oracle) MustDropTable(tableName string) error { " AND column_name = ?", args }*/ -func (db *oracle) IsColumnExist(tableName string, col *core.Column) (bool, error) { - args := []interface{}{tableName, col.Name} +func (db *oracle) IsColumnExist(tableName, colName string) (bool, error) { + args := []interface{}{tableName, colName} query := "SELECT column_name FROM USER_TAB_COLUMNS WHERE table_name = :1" + " AND column_name = :2" rows, err := db.DB().Query(query, args...) diff --git a/postgres_dialect.go b/postgres_dialect.go index 04713cf5..67ceecd0 100644 --- a/postgres_dialect.go +++ b/postgres_dialect.go @@ -896,8 +896,8 @@ func (db *postgres) DropIndexSql(tableName string, index *core.Index) string { return fmt.Sprintf("DROP INDEX %v", quote(idxName)) } -func (db *postgres) IsColumnExist(tableName string, col *core.Column) (bool, error) { - args := []interface{}{tableName, col.Name} +func (db *postgres) IsColumnExist(tableName, colName string) (bool, error) { + args := []interface{}{tableName, colName} query := "SELECT column_name FROM INFORMATION_SCHEMA.COLUMNS WHERE table_name = $1" + " AND column_name = $2" rows, err := db.DB().Query(query, args...) diff --git a/sqlite3_dialect.go b/sqlite3_dialect.go index 8a770f78..c525e5be 100644 --- a/sqlite3_dialect.go +++ b/sqlite3_dialect.go @@ -249,9 +249,9 @@ func (db *sqlite3) DropIndexSql(tableName string, index *core.Index) string { return sql, args }*/ -func (db *sqlite3) IsColumnExist(tableName string, col *core.Column) (bool, error) { +func (db *sqlite3) IsColumnExist(tableName, colName string) (bool, error) { args := []interface{}{tableName} - query := "SELECT name FROM sqlite_master WHERE type='table' and name = ? and ((sql like '%`" + col.Name + "`%') or (sql like '%[" + col.Name + "]%'))" + query := "SELECT name FROM sqlite_master WHERE type='table' and name = ? and ((sql like '%`" + colName + "`%') or (sql like '%[" + colName + "]%'))" rows, err := db.DB().Query(query, args...) if db.Logger != nil { db.Logger.Info("[sql]", query, args)