MYSQL,错误号:150“外键约束格式不正确”

时间:2019-08-03 00:55:08

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

我需要有关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(错误号:150“外键约束格式不正确”)0.016秒

1 个答案:

答案 0 :(得分:0)

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

你应该很好。