@@ -11,10 +11,11 @@ import (
11
11
)
12
12
13
13
var (
14
- tmFmtZero = "0000-00-00 00:00:00"
15
- tmFmtWithMS = "2006-01-02 15:04:05.999"
16
- escaper = "'"
17
- nullStr = "NULL"
14
+ tmFmtZero = "0000-00-00 00:00:00"
15
+ tmFmtWithMS = "2006-01-02 15:04:05.999"
16
+ escaper = "'"
17
+ nullStr = "NULL"
18
+ singleQuoteEscaper = "\\ "
18
19
)
19
20
20
21
//Escape escape the val for sql
@@ -69,7 +70,7 @@ func EscapeInLocation(val interface{}, loc *time.Location) string {
69
70
return fmt .Sprintf ("%.6f" , v )
70
71
71
72
case string :
72
- return escaper + strings .Replace (v , escaper , " \\ " + escaper , - 1 ) + escaper
73
+ return escaper + strings .Replace (v , escaper , singleQuoteEscaper + escaper , - 1 ) + escaper
73
74
default :
74
75
refValue := reflect .ValueOf (v )
75
76
if v == nil || ! refValue .IsValid () {
@@ -93,7 +94,7 @@ func EscapeInLocation(val interface{}, loc *time.Location) string {
93
94
if err != nil {
94
95
return nullStr
95
96
}
96
- return escaper + strings .Replace (string (stringifyData ), escaper , " \\ " + escaper , - 1 ) + escaper
97
+ return escaper + strings .Replace (string (stringifyData ), escaper , singleQuoteEscaper + escaper , - 1 ) + escaper
97
98
98
99
}
99
100
}
@@ -141,3 +142,8 @@ func FormatInLocation(query string, loc *time.Location, args ...interface{}) str
141
142
}
142
143
return sql .String ()
143
144
}
145
+
146
+ //SetSingleQuoteEscaper set the singleQuoteEscaper
147
+ func SetSingleQuoteEscaper (escaper string ) {
148
+ singleQuoteEscaper = escaper
149
+ }
0 commit comments