导入EC2时,SQL错误键列不存在

时间:2013-12-27 01:04:41

标签: mysql sql amazon-ec2 phpmyadmin

我正在PHPMyAdmin中构建一个SQL数据库并将其导入EC2上的SQL Server。当我导入数据库时​​,我收到一条错误说:

  

ERROR 1072(42000)第119行:表格中不存在关键列'des_code_lot'

我去了第119行,发现:

ALTER TABLE lot
ADD CONSTRAINT des_code_lot FOREIGN KEY (des_code_lot) REFERENCES destination (des_code);` 

我之前的SQL代码中有:

CREATE TABLE IF NOT EXISTS lot ( des_code_lot int(11) NOT NULL,
...

我认为这创造了表格中的专栏。

我已经拥有InnoDB上的表格。

无论如何我可以在phpmyadmin中解决这个问题吗?

此外,是否有更简单的方法在EC2上设置涉及外键的SQL数据库而无需导出/导入SQL文件?

1 个答案:

答案 0 :(得分:0)

我的猜测是没有添加约束,因为已经有一个具有该名称的列。

改变这个: ALTER TABLE lot ADD CONSTRAINT des_code_lot FOREIGN KEY (des_code_lot) REFERENCES destination (des_code);

对此: ALTER TABLE lot ADD CONSTRAINT fk_des_code_lot FOREIGN KEY (des_code_lot) REFERENCES destination (des_code);