Как сказал Boneist в комментарии, крайне маловероятно, что Oracle изменит оператор UPDATE
на таком фундаментальном уровне, чтобы ваш UPDATE
не работал.
Более того, нельзя даже думать таким образом. Поскольку никто на самом деле не знает, какими будут / могут быть изменения, ЛУЧШАЯ (и единственная) вещь, безусловно, состоит в том, чтобы продолжать развиваться так, как это лучше всего в текущей версии.
Ваш UPDATE
хорош.
Единственное добавление, которое я хотел бы сделать, это проверить, действительно ли столбец, из которого вы копируете, имеет какое-либо значение. Это позволит избежать «обновления» строк, в которых нечего обновлять (и, возможно, испортить столбцы аудита с помощью триггеров, если они реализованы):
UPDATE table1
SET variable2 = variable3
, variable3 = NULL
WHERE variable2 IS NULL
AND variable3 IS NOT NULL;
UPDATE table1
SET variable1 = variable2
, variable2 = NULL
WHERE variable1 IS NULL
AND variable2 IS NOT NULL;