-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathgetstringarray.go
49 lines (48 loc) · 1.17 KB
/
getstringarray.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
package pgkebab
//// GetStringArray returns first col of query result as []string
//// The first param is the behaviour in case of "null scan" errors
//// The available behaviours are:
//// BehaviourSkipErrors
//// BehaviourConvertNullsToEmpty
//// BehaviourAbortOnScanError
//func (k *DBLink) GetStringArray(behaviour uint8, sqlQuery string, params ...interface{}) ([]string, error) {
// k.assureConnection()
//
// k.lastSQLQuery = sqlQuery
//
// rows, err := k.db.Query(sqlQuery, params...)
//
// var a []string
//
// if err != nil {
// if k.DebugPrint {
// log.Printf(`pgkebab.GetStringArray db.Query The query "%s" with params "%v" has failed with "%v"\n`, sqlQuery, params, err)
// }
//
// return a, err
// }
//
// defer func() { _ = rows.Close() }()
//
// for rows.Next() {
// var s string
//
// if errx := rows.Scan(&s); errx == nil {
// a = append(a, s)
// } else {
// switch behaviour {
// case BehaviourSkipErrors:
// continue
// case BehaviourConvertNullsToEmpty:
// if strings.Contains(errx.Error(), "converting driver.Value type <nil>") {
// a = append(a, ``)
// }
// default:
// return []string{}, errx
// }
// }
// }
//
// return a, nil
//}
//