POSTGRESQL-使外键列指向另一个表

问题描述:

我正在使用psql,我想更改我的表中的一列。 目前这一列是表2的外键,但我想使其指向表3.POSTGRESQL-使外键列指向另一个表

这是可能的或应该删除列并添加一个新的?

有没有必要添加&删除列。您可以删除/禁用约束到一个表并将其添加到另一个表。

做前者的命令是:

alter table Table1 drop constraint if exists name_of_constraint_on_Table_1_column 

做后者的命令是:

alter table Table1 
add constraint name_of_constraint_on_Table_1_column 
foreign key (column) references Table3 (other_column) match full 

你需要找到外键约束的名字,如果你还没有明确地命名它。您可以通过\d命令这样做:

\d Table1 

你应该阅读有关alter table原因有很多事情可以做,以改变该表。