/
main.go
33 lines (26 loc) · 910 Bytes
/
main.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
package pg
import (
"errors"
"fmt"
"go.uber.org/zap"
"strings"
)
var log *zap.SugaredLogger
func Initialize(logger *zap.SugaredLogger) {
log = logger
}
var InvalidOption = errors.New("invalid role option")
type Dsn map[string]string
//// identifier returns the object name ready to be used in a sql query as an object name (e.a. select * from %s)
//func identifier(objectName string) (escaped string) {
// return fmt.Sprintf("\"%s\"", strings.Replace(objectName, "\"", "\"\"", -1))
//}
//
//// quotedSqlValue uses proper quoting for values in SQL queries
//func quotedSqlValue(objectName string) (escaped string) {
// return fmt.Sprintf("'%s'", strings.Replace(objectName, "'", "''", -1))
//}
// connectStringValue uses proper quoting for connect string values
func connectStringValue(objectName string) (escaped string) {
return fmt.Sprintf("'%s'", strings.Replace(objectName, "'", "\\'", -1))
}