0 mysql sql constraints foreign-keys foreign-key-relationship
我正在使用PHP MySQL,并尝试将一个外键添加到一个名为代理的表中,该表名为AreaID,该列应该是表区域ID PK区域的外键.我使用了这个查询,虽然它在添加链接到其他表的外键时起作用,但它无法链接到区域表.
ALTER TABLE properties
ADD FOREIGN KEY (AreaID)
REFERENCES area(AreaID)
Run Code Online (Sandbox Code Playgroud)
我复活的错误是:
ALTER TABLE properties ADD FOREIGN KEY ( AreaID ) REFERENCES AREA( AreaID )
Run Code Online (Sandbox Code Playgroud)
MySQL说:
1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'area(AreaID)' at line 3
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?
AreaId列必须在两个表中具有相同的数据类型,长度和signed/unsigned属性.例如,在Area表中,AreaId列是INT(10)UNSIGNED,那么属性表必须具有相同INT(10)UNSIGNED列的列.您可以更改列名称,但数据类型,长度和签名属性必须相同.
试试这个ALTER语句并检查此链接MySQL外键约束:
ALTER TABLE properties
ADD CONSTRAINT FK_Area
FOREIGN KEY (AreaID)
REFERENCES AREA(AreaID)
ON UPDATE NO ACTION
ON DELETE NO ACTION;
Run Code Online (Sandbox Code Playgroud)