@@ -1205,7 +1205,7 @@ protected void renderSetClause(List<Assignment> assignments) {
1205
1205
protected void visitSetAssignment (Assignment assignment ) {
1206
1206
final List <ColumnReference > columnReferences = assignment .getAssignable ().getColumnReferences ();
1207
1207
if ( columnReferences .size () == 1 ) {
1208
- columnReferences .get ( 0 ). appendColumnForWrite ( this , null );
1208
+ appendColumn ( columnReferences .get ( 0 ) );
1209
1209
appendSql ( '=' );
1210
1210
final Expression assignedValue = assignment .getAssignedValue ();
1211
1211
final SqlTuple sqlTuple = SqlTupleContainer .getSqlTuple ( assignedValue );
@@ -1221,14 +1221,21 @@ protected void visitSetAssignment(Assignment assignment) {
1221
1221
char separator = OPEN_PARENTHESIS ;
1222
1222
for ( ColumnReference columnReference : columnReferences ) {
1223
1223
appendSql ( separator );
1224
- columnReference . appendColumnForWrite ( this , null );
1224
+ appendColumn ( columnReference );
1225
1225
separator = COMMA_SEPARATOR_CHAR ;
1226
1226
}
1227
1227
appendSql ( ")=" );
1228
1228
assignment .getAssignedValue ().accept ( this );
1229
1229
}
1230
1230
}
1231
1231
1232
+ protected void appendColumn (ColumnReference column ) {
1233
+ column .appendColumnForWrite (
1234
+ this ,
1235
+ affectedTableNames .size () > 1 ? determineColumnReferenceQualifier ( column ) : null
1236
+ );
1237
+ }
1238
+
1232
1239
protected void visitSetAssignmentEmulateJoin (Assignment assignment , UpdateStatement statement ) {
1233
1240
final List <ColumnReference > columnReferences = assignment .getAssignable ().getColumnReferences ();
1234
1241
final Expression valueExpression ;
0 commit comments