gpt4 book ai didi

java - 错误代码 : 1215 - Cannot add foreign key constraint

转载 作者:行者123 更新时间:2023-12-01 00:35:57 24 4
gpt4 key购买 nike

我在 MySQL 工作台上运行这个查询,在 MacOS 上安装了最新版本的 MySQL。我的 SQL 查询是:

CREATE DATABASE  IF NOT EXISTS `imdb`;
USE `imdb`;


DROP TABLE IF EXISTS `rating`;



DROP TABLE IF EXISTS `media`;

CREATE TABLE `media` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`title` varchar(70) DEFAULT NULL,
`year` varchar(70) DEFAULT NULL,
`rated` varchar(70) DEFAULT NULL,
`released` varchar(70) DEFAULT NULL,
`runtime` varchar(70) DEFAULT NULL,
`genre` varchar(70) DEFAULT NULL,
`director` varchar(70) DEFAULT NULL,
`writer` varchar(70) DEFAULT NULL,
`actors` varchar(70) DEFAULT NULL,
`plot` varchar(7000) DEFAULT NULL,
`language` varchar(70) DEFAULT NULL,
`country` varchar(70) DEFAULT NULL,
`awards` varchar(70) DEFAULT NULL,
`poster` varchar(270) DEFAULT NULL,
`metascore` varchar(70) DEFAULT NULL,
`imdb_rating` varchar(70) DEFAULT NULL,
`imdb_votes` varchar(70) DEFAULT NULL,
`imdb_id` varchar(70) NOT NULL,
`type` varchar(70) DEFAULT NULL,
`dvd` varchar(70) DEFAULT NULL,
`box_office` varchar(70) DEFAULT NULL,
`production` varchar(70) DEFAULT NULL,
`website` varchar(70) DEFAULT NULL,
`response` varchar(70) DEFAULT NULL,
PRIMARY KEY (`id`)

);

CREATE TABLE `rating` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`source` varchar(70) DEFAULT NULL,
`value` varchar(70) DEFAULT NULL,
`imdb_id` varchar(70) NOT NULL,

PRIMARY KEY (`id`),
FOREIGN KEY (`imdb_id`)
REFERENCES `media`(`imdb_id`)
ON DELETE SET NULL
);

SET FOREIGN_KEY_CHECKS = 1;

创建表评级查询失败。我不知道为什么,任何帮助将不胜感激。

准确的错误响应是:

10:12:44
CREATE TABLE `rating` ( `id` int(11) NOT NULL AUTO_INCREMENT, `source` varchar(70) DEFAULT NULL, `value` varchar(70) DEFAULT NULL, `imdb_id` varchar(70) NOT NULL, PRIMARY KEY (`id`), FOREIGN KEY (`imdb_id`) REFERENCES `media`(`imdb_id`) ON DELETE SET NULL )

错误代码:1215。无法添加外键约束
0.123秒

我正在构建一个 Spring REST 应用程序,该应用程序使用太多关系来构建 IMDB 数据库或类似数据库的本地副本。

最佳答案

MySQL 中的外键实际上不必引用主键列,但它必须引用唯一的列。因此,一种可能的修复方法是在 imdb_id 列上添加唯一约束:

ALTER TABLE media ADD CONSTRAINT cstr_imdb UNIQUE (imdb_id);

关于java - 错误代码 : 1215 - Cannot add foreign key constraint,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50616824/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com