假设我有两个表:Customer
和City
. 有很多Customer
s住在同一个City
。城市有一个uid
主键。客户通过 具有指向其各自城市的外键引用Customer.city_uid
。
City.uid
由于外部原因,我必须相互交换两个s。但客户应该与他们的城市保持联系。因此,也有必要交换Customer.city_uid
s。所以我想我首先交换City.uid
s ,然后Customer.city_uid
通过UPDATE
-statement 相应地更改 s 。不幸的是,我不能这样做,因为这些uids
是从Customer
-table 引用的,而 PostgreSQL 阻止我这样做。
有没有一种简单的方法可以将两个City.uid
s 以及 s 相互交换Customer.city_uid
?