我正在构建一个SQL数据库,但遇到了“关系‘sexes’已存在”的错误。
根据发布类似问题的SO用户的帖子,我尝试过:注释掉约束条件以查看是否有干扰、更改所有序列/所有主键引用为整数以匹配类型、如果它们存在,则删除所有表。无论我做什么,错误仍然是相同的,因此我已经发布了我的原始代码。我真的需要一些指导,以确定这种情况的问题所在。谢谢!
CREATE TABLE sexes (
id serial PRIMARY KEY,
string text NOT NULL
);
CREATE TABLE humans (
id serial PRIMARY KEY UNIQUE NOT NULL,
forename text NOT NULL,
surname text NOT NULL,
birthdate date,
sex_id integer REFERENCES sexes(id)
);
CREATE TABLE marriages (
id serial PRIMARY KEY UNIQUE NOT NULL,
partner_1_id integer REFERENCES humans(id),
partner_2_id integer REFERENCES humans(id),
marriage_date date NOT NULL,
divorce_date date NOT NULL,
CONSTRAINT divorced CHECK (marriage_date <= divorce_date),
CONSTRAINT marry_self CHECK (partner_1_id <> partner_2_id)
);