私は自然キーを持つテーブルと、それに対する外部キーを持つ別のテーブルを持っています:
create table A
(
id varchar(255) not null primary key
...
)
create table B
(
a_id varchar(255) not null
...
foreign key (a_id) references A (id)
)
で変換を実行したいと思いますA.id
(この特定のケースではそれを小文字にします) と で同時にB.a_id
.
明らかに私がそうするなら:
update A set id=lower(id);
update B set a_id=lower(a_id);
最初の更新で外部キー制約違反が発生します。
とにかく2つの更新を「同時に」実行する方法はありますか、またはこれに対処する別の方法をお勧めできますか?