@@ -289,7 +289,7 @@ func buildBulkMergePLSQL(db *gorm.DB, createValues clause.Values, onConflictClau
289289
290290 // Start PL/SQL block
291291 plsqlBuilder .WriteString ("DECLARE\n " )
292- writeTableRecordCollectionDecl (& plsqlBuilder , stmt .Schema .DBNames , stmt .Table )
292+ writeTableRecordCollectionDecl (db , & plsqlBuilder , stmt .Schema .DBNames , stmt .Table )
293293 plsqlBuilder .WriteString (" l_affected_records t_records;\n " )
294294
295295 // Create array types and variables for each column
@@ -323,7 +323,7 @@ func buildBulkMergePLSQL(db *gorm.DB, createValues clause.Values, onConflictClau
323323 // FORALL with MERGE and RETURNING BULK COLLECT INTO
324324 plsqlBuilder .WriteString (fmt .Sprintf (" FORALL i IN 1..%d\n " , len (createValues .Values )))
325325 plsqlBuilder .WriteString (" MERGE INTO " )
326- writeQuotedIdentifier (& plsqlBuilder , stmt .Table )
326+ db . QuoteTo (& plsqlBuilder , stmt .Table )
327327 plsqlBuilder .WriteString (" t\n " )
328328 // Build USING clause
329329 plsqlBuilder .WriteString (" USING (SELECT " )
@@ -332,7 +332,7 @@ func buildBulkMergePLSQL(db *gorm.DB, createValues clause.Values, onConflictClau
332332 plsqlBuilder .WriteString (", " )
333333 }
334334 plsqlBuilder .WriteString (fmt .Sprintf ("l_col_%d_array(i) AS " , idx ))
335- writeQuotedIdentifier (& plsqlBuilder , column .Name )
335+ db . QuoteTo (& plsqlBuilder , column .Name )
336336 }
337337 plsqlBuilder .WriteString (" FROM DUAL) s\n " )
338338
@@ -344,9 +344,9 @@ func buildBulkMergePLSQL(db *gorm.DB, createValues clause.Values, onConflictClau
344344 plsqlBuilder .WriteString (" AND " )
345345 }
346346 plsqlBuilder .WriteString ("t." )
347- writeQuotedIdentifier (& plsqlBuilder , conflictCol .Name )
347+ db . QuoteTo (& plsqlBuilder , conflictCol .Name )
348348 plsqlBuilder .WriteString (" = s." )
349- writeQuotedIdentifier (& plsqlBuilder , conflictCol .Name )
349+ db . QuoteTo (& plsqlBuilder , conflictCol .Name )
350350 }
351351 plsqlBuilder .WriteString (")\n " )
352352
@@ -371,9 +371,9 @@ func buildBulkMergePLSQL(db *gorm.DB, createValues clause.Values, onConflictClau
371371 plsqlBuilder .WriteString (", " )
372372 }
373373 plsqlBuilder .WriteString ("t." )
374- writeQuotedIdentifier (& plsqlBuilder , column .Name )
374+ db . QuoteTo (& plsqlBuilder , column .Name )
375375 plsqlBuilder .WriteString (" = s." )
376- writeQuotedIdentifier (& plsqlBuilder , column .Name )
376+ db . QuoteTo (& plsqlBuilder , column .Name )
377377 updateCount ++
378378 }
379379 }
@@ -405,9 +405,9 @@ func buildBulkMergePLSQL(db *gorm.DB, createValues clause.Values, onConflictClau
405405 plsqlBuilder .WriteString (", " )
406406 }
407407 plsqlBuilder .WriteString ("t." )
408- writeQuotedIdentifier (& plsqlBuilder , column .Name )
408+ db . QuoteTo (& plsqlBuilder , column .Name )
409409 plsqlBuilder .WriteString (" = s." )
410- writeQuotedIdentifier (& plsqlBuilder , column .Name )
410+ db . QuoteTo (& plsqlBuilder , column .Name )
411411 updateCount ++
412412 }
413413 }
@@ -427,9 +427,9 @@ func buildBulkMergePLSQL(db *gorm.DB, createValues clause.Values, onConflictClau
427427 }
428428 }
429429 plsqlBuilder .WriteString (" WHEN MATCHED THEN UPDATE SET t." )
430- writeQuotedIdentifier (& plsqlBuilder , noopCol )
431- plsqlBuilder .WriteString (" = s ." )
432- writeQuotedIdentifier (& plsqlBuilder , noopCol )
430+ db . QuoteTo (& plsqlBuilder , noopCol )
431+ plsqlBuilder .WriteString (" = t ." )
432+ db . QuoteTo (& plsqlBuilder , noopCol )
433433 plsqlBuilder .WriteString ("\n " )
434434 }
435435
@@ -444,7 +444,7 @@ func buildBulkMergePLSQL(db *gorm.DB, createValues clause.Values, onConflictClau
444444 if insertCount > 0 {
445445 plsqlBuilder .WriteString (", " )
446446 }
447- writeQuotedIdentifier (& plsqlBuilder , column .Name )
447+ db . QuoteTo (& plsqlBuilder , column .Name )
448448 insertCount ++
449449 }
450450 }
@@ -459,7 +459,7 @@ func buildBulkMergePLSQL(db *gorm.DB, createValues clause.Values, onConflictClau
459459 plsqlBuilder .WriteString (", " )
460460 }
461461 plsqlBuilder .WriteString ("s." )
462- writeQuotedIdentifier (& plsqlBuilder , column .Name )
462+ db . QuoteTo (& plsqlBuilder , column .Name )
463463 insertCount ++
464464 }
465465 }
@@ -475,7 +475,7 @@ func buildBulkMergePLSQL(db *gorm.DB, createValues clause.Values, onConflictClau
475475 if insertCount > 0 {
476476 plsqlBuilder .WriteString (", " )
477477 }
478- writeQuotedIdentifier (& plsqlBuilder , column .Name )
478+ db . QuoteTo (& plsqlBuilder , column .Name )
479479 insertCount ++
480480 }
481481 }
@@ -489,7 +489,7 @@ func buildBulkMergePLSQL(db *gorm.DB, createValues clause.Values, onConflictClau
489489 plsqlBuilder .WriteString (", " )
490490 }
491491 plsqlBuilder .WriteString ("s." )
492- writeQuotedIdentifier (& plsqlBuilder , column .Name )
492+ db . QuoteTo (& plsqlBuilder , column .Name )
493493 insertCount ++
494494 }
495495 }
@@ -503,7 +503,7 @@ func buildBulkMergePLSQL(db *gorm.DB, createValues clause.Values, onConflictClau
503503 if i > 0 {
504504 plsqlBuilder .WriteString (", " )
505505 }
506- writeQuotedIdentifier (& plsqlBuilder , column )
506+ db . QuoteTo (& plsqlBuilder , column )
507507 }
508508 plsqlBuilder .WriteString ("\n BULK COLLECT INTO l_affected_records;\n " )
509509
@@ -570,7 +570,7 @@ func buildBulkInsertOnlyPLSQL(db *gorm.DB, createValues clause.Values) {
570570
571571 // Start PL/SQL block
572572 plsqlBuilder .WriteString ("DECLARE\n " )
573- writeTableRecordCollectionDecl (& plsqlBuilder , stmt .Schema .DBNames , stmt .Table )
573+ writeTableRecordCollectionDecl (db , & plsqlBuilder , stmt .Schema .DBNames , stmt .Table )
574574 plsqlBuilder .WriteString (" l_inserted_records t_records;\n " )
575575
576576 // Create array types and variables for each column
@@ -604,14 +604,14 @@ func buildBulkInsertOnlyPLSQL(db *gorm.DB, createValues clause.Values) {
604604 // FORALL with RETURNING BULK COLLECT INTO
605605 plsqlBuilder .WriteString (fmt .Sprintf (" FORALL i IN 1..%d\n " , len (createValues .Values )))
606606 plsqlBuilder .WriteString (" INSERT INTO " )
607- writeQuotedIdentifier (& plsqlBuilder , stmt .Table )
607+ db . QuoteTo (& plsqlBuilder , stmt .Table )
608608 plsqlBuilder .WriteString (" (" )
609609 // Add column names
610610 for i , column := range createValues .Columns {
611611 if i > 0 {
612612 plsqlBuilder .WriteString (", " )
613613 }
614- writeQuotedIdentifier (& plsqlBuilder , column .Name )
614+ db . QuoteTo (& plsqlBuilder , column .Name )
615615 }
616616 plsqlBuilder .WriteString (") VALUES (" )
617617
@@ -631,7 +631,7 @@ func buildBulkInsertOnlyPLSQL(db *gorm.DB, createValues clause.Values) {
631631 if i > 0 {
632632 plsqlBuilder .WriteString (", " )
633633 }
634- writeQuotedIdentifier (& plsqlBuilder , column )
634+ db . QuoteTo (& plsqlBuilder , column )
635635 }
636636 plsqlBuilder .WriteString ("\n BULK COLLECT INTO l_inserted_records;\n " )
637637
@@ -640,7 +640,7 @@ func buildBulkInsertOnlyPLSQL(db *gorm.DB, createValues clause.Values) {
640640 for rowIdx := 0 ; rowIdx < len (createValues .Values ); rowIdx ++ {
641641 for _ , column := range allColumns {
642642 var columnBuilder strings.Builder
643- writeQuotedIdentifier (& columnBuilder , column )
643+ db . QuoteTo (& columnBuilder , column )
644644 quotedColumn := columnBuilder .String ()
645645
646646 if field := findFieldByDBName (schema , column ); field != nil {
0 commit comments