以下陈述有什么问题?
ALTER TABLE submittedForecast
ADD CONSTRAINT FOREIGN KEY (data) REFERENCES blobs (id);
Run Code Online (Sandbox Code Playgroud)
我得到的错误信息是
Can't create table `fcdemo`.`#sql-664_b` (errno: 150 "Foreign key constraint is incorrectly formed")
Run Code Online (Sandbox Code Playgroud)
这适用于MariaDB 10.1.8:
CREATE TABLE `submittedforecast` (
`id` INT(11) NOT NULL,
`data` INT(11) NOT NULL,
PRIMARY KEY (`id`),
INDEX `data` (`data`)
) ENGINE=InnoDB;
CREATE TABLE `blobs` (
`id` INT(11) NOT NULL,
`content` BLOB NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB;
ALTER TABLE submittedForecast
ADD CONSTRAINT FOREIGN KEY (data) REFERENCES blobs (id);
Run Code Online (Sandbox Code Playgroud)
你可以给你MariaDB的版本号和一个完整的例子包括CREATE TABLE用于报表submittedForecast和blobs?
小智 5
不知道您是否已经解决了这个问题,但请确保表之间的引擎和排序规则匹配(例如:latin1 到 latin1 以及 InnoDB 到 InnoDB)。
我遇到了同样的问题,通过切换这些我设法让它工作。
| 归档时间: |
|
| 查看次数: |
13742 次 |
| 最近记录: |