MySQL - 错误代码:1005。无法创建表'database_name。#sql-776_f23d'(错误号:150)

时间:2013-07-16 12:04:03

标签: mysql

我有以下内容:

CREATE TABLE afil2 (
    id bigint(20) NOT NULL AUTO_INCREMENT,
    `apellido` varchar(30),
    `nombre` varchar(30),
    documento varchar(30),
    PRIMARY KEY (`id`)
);

ALTER TABLE ordenes ADD COLUMN afil2 bigint(20);
ALTER TABLE ordenes ADD FOREIGN KEY(afil2) REFERENCES database_name.afil2(id);

在最后一行,我收到错误Error Code: 1005. Can't create table 'database_name.#sql-776_f23d' (errno: 150)

我做错了什么?

2 个答案:

答案 0 :(得分:0)

ALTER TABLE ordenes ADD FOREIGN KEY(afil2) REFERENCES database_name.afil2(id);

我认为您应该在此行中用database_name替换您的实际数据库名称。

答案 1 :(得分:0)

确保您的两个表都属于同一类型(例如InnoDB)。否则约束将失败。