问题描述
我正在尝试在 Access 上创建一个关于国家/地区(用于学校作业)的数据库,但 Access 说使用 REFERENCES 一词在关于我的约束子句中存在语法错误 - 有没有人知道如何获取这些外键工作吗?我一直在尝试查找,但无济于事(也刚开始使用 sql)
Create Table Countries
(Country_ID INTEGER primary key,name TEXT(255),Politics_ID INTEGER
CONSTRAINT fkPoliticsID FOREIGN KEY (Politics_ID) REFERENCES Politics,Eduction_ID INTEGER
CONSTRAINT fkEductionID FOREIGN KEY (Eduction_ID) REFERENCES Eduction,Geography_ID INTEGER
CONSTRAINT fkGeographyID FOREIGN KEY (Geography_ID) REFERENCES
Geography,Demographic_ID INTEGER
CONSTRAINT fkDemographicID FOREIGN KEY (Demographic_ID) REFERENCES
Demographic,Economy_ID INTEGER
CONSTRAINT fkEconomyID FOREIGN KEY (Economy_ID) REFERENCES Economy
);
这是我添加更多逗号的时候
解决方法
这是一个类似但更简单的查询,适用于 Access 2010。
请注意,我在 Politics_ID
表中定义了一个 Countries
字段作为用于引用 Politics
表的外键字段。
CREATE TABLE Countries
(
Country_ID INTEGER primary key,Country_name TEXT(255),Politics_ID INTEGER,CONSTRAINT fkPoliticsID FOREIGN KEY (Politics_ID) REFERENCES Politics
);
该语句假定远程表 (Politics
) 中的匹配字段也命名为 Politics_ID
。但是,如果该远程字段具有不同的名称(例如 Pol_ID
),您可以像这样在远程表名称之后包含其名称:
CONSTRAINT fkPoliticsID FOREIGN KEY (Politics_ID) REFERENCES Politics (Pol_ID)