@@ -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
@@ -556,7 +556,7 @@ func buildBulkInsertOnlyPLSQL(db *gorm.DB, createValues clause.Values) {
556556
557557 // Start PL/SQL block
558558 plsqlBuilder .WriteString ("DECLARE\n " )
559- writeTableRecordCollectionDecl (& plsqlBuilder , stmt .Schema .DBNames , stmt .Table )
559+ writeTableRecordCollectionDecl (db , & plsqlBuilder , stmt .Schema .DBNames , stmt .Table )
560560 plsqlBuilder .WriteString (" l_inserted_records t_records;\n " )
561561
562562 // Create array types and variables for each column
@@ -590,14 +590,14 @@ func buildBulkInsertOnlyPLSQL(db *gorm.DB, createValues clause.Values) {
590590 // FORALL with RETURNING BULK COLLECT INTO
591591 plsqlBuilder .WriteString (fmt .Sprintf (" FORALL i IN 1..%d\n " , len (createValues .Values )))
592592 plsqlBuilder .WriteString (" INSERT INTO " )
593- writeQuotedIdentifier (& plsqlBuilder , stmt .Table )
593+ db . QuoteTo (& plsqlBuilder , stmt .Table )
594594 plsqlBuilder .WriteString (" (" )
595595 // Add column names
596596 for i , column := range createValues .Columns {
597597 if i > 0 {
598598 plsqlBuilder .WriteString (", " )
599599 }
600- writeQuotedIdentifier (& plsqlBuilder , column .Name )
600+ db . QuoteTo (& plsqlBuilder , column .Name )
601601 }
602602 plsqlBuilder .WriteString (") VALUES (" )
603603
@@ -617,7 +617,7 @@ func buildBulkInsertOnlyPLSQL(db *gorm.DB, createValues clause.Values) {
617617 if i > 0 {
618618 plsqlBuilder .WriteString (", " )
619619 }
620- writeQuotedIdentifier (& plsqlBuilder , column )
620+ db . QuoteTo (& plsqlBuilder , column )
621621 }
622622 plsqlBuilder .WriteString ("\n BULK COLLECT INTO l_inserted_records;\n " )
623623
@@ -626,7 +626,7 @@ func buildBulkInsertOnlyPLSQL(db *gorm.DB, createValues clause.Values) {
626626 for rowIdx := 0 ; rowIdx < len (createValues .Values ); rowIdx ++ {
627627 for _ , column := range allColumns {
628628 var columnBuilder strings.Builder
629- writeQuotedIdentifier (& columnBuilder , column )
629+ db . QuoteTo (& columnBuilder , column )
630630 quotedColumn := columnBuilder .String ()
631631
632632 if field := findFieldByDBName (schema , column ); field != nil {
0 commit comments