Skip to content

Commit a1d5e64

Browse files
committed
allow trailing spaces in bulk inseriton via named queries, fix #690
1 parent 75a7ebf commit a1d5e64

2 files changed

Lines changed: 4 additions & 4 deletions

File tree

named.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -224,7 +224,7 @@ func bindStruct(bindType int, query string, arg interface{}, m *reflectx.Mapper)
224224
return bound, arglist, nil
225225
}
226226

227-
var valueBracketReg = regexp.MustCompile(`\([^(]*.[^(]\)$`)
227+
var valueBracketReg = regexp.MustCompile(`\([^(]*.[^(]\)\s*$`)
228228

229229
func fixBound(bound string, loop int) string {
230230
loc := valueBracketReg.FindStringIndex(bound)

named_test.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -202,7 +202,7 @@ func TestNamedQueries(t *testing.T) {
202202
{FirstName: "Ngani", LastName: "Laumape", Email: "nlaumape@ab.co.nz"},
203203
}
204204

205-
insert := fmt.Sprintf("INSERT INTO person (first_name, last_name, email, added_at) VALUES (:first_name, :last_name, :email, %v)", now)
205+
insert := fmt.Sprintf("INSERT INTO person (first_name, last_name, email, added_at) VALUES (:first_name, :last_name, :email, %v)\n", now)
206206
_, err = db.NamedExec(insert, sls)
207207
test.Error(err)
208208

@@ -214,7 +214,7 @@ func TestNamedQueries(t *testing.T) {
214214
}
215215

216216
_, err = db.NamedExec(`INSERT INTO person (first_name, last_name, email)
217-
VALUES (:first_name, :last_name, :email)`, slsMap)
217+
VALUES (:first_name, :last_name, :email) `, slsMap)
218218
test.Error(err)
219219

220220
type A map[string]interface{}
@@ -226,7 +226,7 @@ func TestNamedQueries(t *testing.T) {
226226
}
227227

228228
_, err = db.NamedExec(`INSERT INTO person (first_name, last_name, email)
229-
VALUES (:first_name, :last_name, :email)`, typedMap)
229+
VALUES (:first_name, :last_name, :email) `, typedMap)
230230
test.Error(err)
231231

232232
for _, p := range sls {

0 commit comments

Comments
 (0)