我有一个带有自然键的表和另一个带有外键约束的表:
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);
比我第一次更新时会违反外键约束。
无论如何“同时”执行这两个更新,或者你能推荐另一种方法来处理这个问题吗?