From 1f0dd9bef2d9549229146dbbdd207c9e623f3ac6 Mon Sep 17 00:00:00 2001 From: Lunny Xiao Date: Fri, 13 Mar 2015 15:26:47 +0800 Subject: [PATCH] bug fixed for isTableEmpty --- session.go | 29 ++++------------------------- 1 file changed, 4 insertions(+), 25 deletions(-) diff --git a/session.go b/session.go index 04cd96bd..0d11d99f 100644 --- a/session.go +++ b/session.go @@ -562,29 +562,7 @@ func (session *Session) DropIndexes(bean interface{}) error { return nil } -// DropTable drop a table and all indexes of the table -/*func (session *Session) DropTable(bean interface{}) error { - defer session.resetStatement() - if session.IsAutoClose { - defer session.Close() - } - - t := reflect.Indirect(reflect.ValueOf(bean)).Type() - - if t.Kind() == reflect.String { - session.Statement.AltTableName = bean.(string) - } else if t.Kind() == reflect.Struct { - session.Statement.RefTable = session.Engine.TableInfo(bean) - } else { - return errors.New("Unsupported type") - } - - //return session.Engine.Dialect().MustDropTable(session.Statement.TableName()) - sqlStr := session.Engine.Dialect().DropTableSql(session.Statement.TableName()) - _, err := session.exec(sqlStr) - return err -}*/ - +// drop table will drop table if exist, if drop failed, it will return error func (session *Session) DropTable(beanOrTableName interface{}) error { tableName, err := session.Engine.tableName(beanOrTableName) if err != nil { @@ -1442,8 +1420,9 @@ func (session *Session) isTableEmpty(tableName string) (bool, error) { } var total int64 - err := session.DB().QueryRow(fmt.Sprintf("select count(*) from %s", tableName)). - Scan(&total) + sql := fmt.Sprintf("select count(*) from %s", session.Engine.Quote(tableName)) + err := session.DB().QueryRow(sql).Scan(&total) + session.Engine.logSQL(sql) if err != nil { return true, err }