如何修改列数据类型并在 postgresql 中添加对它的引用?

how to modify column data type and add references to it in postgresql?

如何修改现有列并添加对它的引用?

假设我有这个 table 创建脚本并在服务器上执行它

create table person (
id bigserial primary key,
firstname varchar(255),
flastname varchar(255),
employeeid int
);

现在我有一个人 table,但后来我意识到我需要引用另一个 table 的员工 ID,我不想删除这个现有的人 [=24] =] 因为它现在有数据。 如何将 REFERENCES employee(employeeid) 添加到 table 人的 employeeid 列?

如果我没有忘记添加那个引用关键字,我的创建 table 应该像下面这样

create table person (
id bigserial primary key,
firstname varchar(255),
flastname varchar(255),
employeeid int references employee(employeeid)
);

既然已有数据,如何修改现有的 employeeid 使其具有引用关键字?

使用ALTER TABLE:

ALTER TABLE person
   ADD FOREIGN KEY (employeeid) REFERENCES employee(employeeid);