bug fixed and code refactoring

This commit is contained in:
Lunny Xiao 2014-04-11 23:33:56 +08:00
parent b1dfd648f2
commit a8b9f5d8b8
2 changed files with 4 additions and 18 deletions

View File

@ -119,10 +119,13 @@ func (db *mysql) GetColumns(tableName string) ([]string, map[string]*core.Column
return nil, nil, err return nil, nil, err
} }
defer cnn.Close() defer cnn.Close()
rows, err := cnn.Query(s, args...) rows, err := cnn.Query(s, args...)
if err != nil { if err != nil {
return nil, nil, err return nil, nil, err
} }
defer rows.Close()
cols := make(map[string]*core.Column) cols := make(map[string]*core.Column)
colSeq := make([]string, 0) colSeq := make([]string, 0)
for rows.Next() { for rows.Next() {

View File

@ -276,23 +276,6 @@ func (db *postgres) GetIndexes(tableName string) (map[string]*core.Index, error)
return indexes, nil return indexes, nil
} }
// PgSeqFilter filter SQL replace ?, ? ... to $1, $2 ...
type PgSeqFilter struct {
}
func (s *PgSeqFilter) Do(sql string, dialect core.Dialect, table *core.Table) string {
segs := strings.Split(sql, "?")
size := len(segs)
res := ""
for i, c := range segs {
if i < size-1 {
res += c + fmt.Sprintf("$%v", i+1)
}
}
res += segs[size-1]
return res
}
func (db *postgres) Filters() []core.Filter { func (db *postgres) Filters() []core.Filter {
return []core.Filter{&core.IdFilter{}, &core.QuoteFilter{}, &PgSeqFilter{}} return []core.Filter{&core.IdFilter{}, &core.QuoteFilter{}, &core.SeqFilter{"$", 1}}
} }