github.com/keysonZZZ/kmg@v0.0.0-20151121023212-05317bfd7d39/kmgSql/GetTableData.go (about) 1 package kmgSql 2 3 import "fmt" 4 5 // get all data of a table 6 // mostly for test 7 func (db *DB) GetTableData(tableName string) (output []map[string]string, err error) { 8 return Query(fmt.Sprintf("SELECT * FROM `%s`", tableName)) 9 } 10 func (db *DB) MustGetTableData(tableName string) (output []map[string]string) { 11 output, err := db.GetTableData(tableName) 12 if err != nil { 13 panic(err) 14 } 15 return 16 } 17 18 func (db *DB) GetTableDataMap(tableName string, pkName string) (output map[string]map[string]string, err error) { 19 grid, err := db.GetTableData(tableName) 20 output = make(map[string]map[string]string) 21 for _, row := range grid { 22 pk, ok := row[pkName] 23 if !ok { 24 return nil, fmt.Errorf("GetTableDataMap: pkName colum not exits, tableName: %s, pkName: %s", tableName, pkName) 25 } 26 output[pk] = row 27 } 28 return 29 } 30 31 func (db *DB) MustGetTableDataMap(tableName string, pkName string) (output map[string]map[string]string) { 32 output, err := db.GetTableDataMap(tableName, pkName) 33 if err != nil { 34 panic(err) 35 } 36 return 37 }