作为个人项目,我正在从数据集创建一个小型数据模型。
现在我在两个表之间创建外键时遇到问题。
CREATE TABLE IF NOT EXISTS public."Years"
(
"ID_Year" integer,
"Year" integer,
PRIMARY KEY ("ID_Year")
);
CREATE TABLE IF NOT EXISTS public."SendingCountries"
(
"ID_Send_Country" integer,
"Year2Years" integer,
"Country2Countries" integer,
"Female_legis2FemaleLegislators" integer,
"FeministPolicy" boolean,
PRIMARY KEY ("ID_Send_Country")
);
我用过这个代码:
ALTER TABLE SendingCountries
ADD CONSTRAINT FK_SendingCountries_Years
FOREIGN KEY (Year2Years)
REFERENCES Years(ID_Year);
但我有这样的输出:“错误:关系“发送国家”不存在”
任何人都可以强调我做错了什么吗?
谢谢
我的目标是将 SendingCountries 表中的“Year2Years”列作为表 Years 的 ID_Year 的外键
我可以从你的代码中想到两个原因:
根据提供的代码,您似乎在表名和列名周围使用双引号,这意味着 PostgreSQL 将保留您提供的大小写。仔细检查 SQL 查询中的大小写。
你可以尝试吗:
ALTER TABLE public."SendingCountries"
ADD CONSTRAINT FK_SendingCountries_Years
FOREIGN KEY ("Year2Years")
REFERENCES public."Years"("ID_Year");