【问题标题】:MYSQL, errno: 150 "Foreign key constraint is incorrectly formed"MYSQL, errno: 150 “外键约束格式不正确”
【发布时间】:2019-08-03 00:55:08
【问题描述】:

我需要帮助解决 MySQL 中的这个问题。我有这张桌子:

CREATE TABLE syncproductscard(
  `idsyncproductscard` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `idsyncproducts` int(10) NOT NULL,
  `carsa` varchar(20) DEFAULT NULL,
  `emsa` varchar(20) DEFAULT NULL,
  `column` varchar(250) DEFAULT NULL,
  `val` varchar(2000) DEFAULT NULL,
  `filter` varchar(500) DEFAULT NULL,
  `video` varchar(256) DEFAULT NULL,  
  PRIMARY KEY (`idsyncproductscard`)  
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

但修改表以添加外键,不起作用

ALTER TABLE syncproductscard 
ADD CONSTRAINT `fk_idsyncproducts` 
FOREIGN KEY (`idsyncproducts`)
REFERENCES syncproducts(`idsyncproducts`)
ON DELETE CASCADE;

MySQL 说:

错误代码:1005。无法创建表AAA.#sql-41d0_60(errno:150“外键约束格式不正确”)0.016秒

【问题讨论】:

标签: mysql constraints mysql-error-1064 alter-table errno


【解决方案1】:

检查这两个表并确保它们具有相同的属性。 ENGINE = InnoDB CHARSET = utf8

你应该很高兴。

【讨论】:

    猜你喜欢
    • 2018-09-04
    • 1970-01-01
    • 2018-06-19
    • 2018-03-02
    • 2020-07-07
    • 1970-01-01
    • 2017-04-13
    • 2019-09-17
    • 2020-12-16
    相关资源
    最近更新 更多