@@ -7,7 +7,6 @@ package xorm
77import (
88 "errors"
99 "fmt"
10- "io"
1110 "reflect"
1211 "sort"
1312 "strconv"
@@ -355,22 +354,22 @@ func (session *Session) innerInsert(bean interface{}) (int64, error) {
355354 }
356355
357356 var buf = builder .NewWriter ()
358- if _ , err := io .WriteString (buf , fmt .Sprintf ("INSERT INTO %s" , session .engine .Quote (tableName ))); err != nil {
357+ if _ , err := buf .WriteString (fmt .Sprintf ("INSERT INTO %s" , session .engine .Quote (tableName ))); err != nil {
359358 return 0 , err
360359 }
361360
362361 if len (colPlaces ) <= 0 {
363362 if session .engine .dialect .DBType () == core .MYSQL {
364- if _ , err := io .WriteString (buf , " VALUES ()" ); err != nil {
363+ if _ , err := buf .WriteString (" VALUES ()" ); err != nil {
365364 return 0 , err
366365 }
367366 } else {
368- if _ , err := io .WriteString (buf , fmt .Sprintf ("%s DEFAULT VALUES" , output )); err != nil {
367+ if _ , err := buf .WriteString (fmt .Sprintf ("%s DEFAULT VALUES" , output )); err != nil {
369368 return 0 , err
370369 }
371370 }
372371 } else {
373- if _ , err := io .WriteString (buf , " (" ); err != nil {
372+ if _ , err := buf .WriteString (" (" ); err != nil {
374373 return 0 , err
375374 }
376375
@@ -379,9 +378,7 @@ func (session *Session) innerInsert(bean interface{}) (int64, error) {
379378 }
380379
381380 if session .statement .cond .IsValid () {
382- if _ , err := io .WriteString (buf , fmt .Sprintf (")%s SELECT " ,
383- output ,
384- )); err != nil {
381+ if _ , err := buf .WriteString (fmt .Sprintf (")%s SELECT " , output )); err != nil {
385382 return 0 , err
386383 }
387384
@@ -398,7 +395,7 @@ func (session *Session) innerInsert(bean interface{}) (int64, error) {
398395 return 0 , err
399396 }
400397
401- if _ , err := io .WriteString (buf , fmt .Sprintf (" FROM %v WHERE " , session .engine .Quote (tableName ))); err != nil {
398+ if _ , err := buf .WriteString (fmt .Sprintf (" FROM %v WHERE " , session .engine .Quote (tableName ))); err != nil {
402399 return 0 , err
403400 }
404401
@@ -408,7 +405,7 @@ func (session *Session) innerInsert(bean interface{}) (int64, error) {
408405 } else {
409406 buf .Append (args ... )
410407
411- if _ , err := io .WriteString (buf , fmt .Sprintf (")%s VALUES (%v" ,
408+ if _ , err := buf .WriteString (fmt .Sprintf (")%s VALUES (%v" ,
412409 output ,
413410 colPlaces )); err != nil {
414411 return 0 , err
@@ -418,21 +415,21 @@ func (session *Session) innerInsert(bean interface{}) (int64, error) {
418415 return 0 , err
419416 }
420417
421- if _ , err := io .WriteString (buf , ")" ); err != nil {
418+ if _ , err := buf .WriteString (")" ); err != nil {
422419 return 0 , err
423420 }
424421 }
425422 }
426423
427- sqlStr := buf .String ()
428- args = buf .Args ()
429-
430424 if len (table .AutoIncrement ) > 0 && session .engine .dialect .DBType () == core .POSTGRES {
431- if _ , err := io .WriteString (buf , " RETURNING " + session .engine .Quote (table .AutoIncrement )); err != nil {
425+ if _ , err := buf .WriteString (" RETURNING " + session .engine .Quote (table .AutoIncrement )); err != nil {
432426 return 0 , err
433427 }
434428 }
435429
430+ sqlStr := buf .String ()
431+ args = buf .Args ()
432+
436433 handleAfterInsertProcessorFunc := func (bean interface {}) {
437434 if session .isAutoCommit {
438435 for _ , closure := range session .afterClosures {
0 commit comments