【问题标题】:MYSQL Add Foreign Key ConstraintMYSQL 添加外键约束
【发布时间】:2014-06-01 03:31:28
【问题描述】:

我正在尝试为我的两个表添加一个约束,但我不记得正确的语法是什么。下面是两张表,

难道…………

ALTER TABLE dispatch ADD CONSTRAINT fk_productlines FOREIGN KEY
(productlines_fkid) REFERENCES productlines(fkid)

对吗? 当我尝试

ALTER TABLE dispatch ADD CONSTRAINT fk_productlines FOREIGN KEY
(fkid) REFERENCES productlines(fkid)

我收到以下消息:

#1072 - Key column 'fkid' doesn't exist in table

【问题讨论】:

  • 如果您不记得语法 - 请查看文档。
  • 有“我不记得语法”的文档,不需要在SO上发帖。

标签: mysql phpmyadmin


【解决方案1】:

productlines.fkid 是主键吗?

要使其成为dispatch 中的foreign key,它必须是productlines 中的primary key

在 dispatch 中添加外键:

ALTER TABLE dispatch 
ADD CONSTRAINT fk_productlines 
FOREIGN KEY (id) REFERENCES productlines(fkid)

【讨论】:

    【解决方案2】:
    ALTER TABLE product_lines ADD CONSTRAINT fk_productlines FOREIGN KEY
    (fkid) REFERENCES dispatch(ID)
    

    这应该可行.. 自己试试吧!

    【讨论】:

    • 起初是的,但现在我稍微修改了一下.. :D
    • 如果您没有注意到,OP 应该如何找到差异?
    猜你喜欢
    • 1970-01-01
    • 2013-03-10
    • 2021-11-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多