我正在创建一个最伟大的电影数据库,我收到错误:
ERROR 1005(HY000)第19行:无法创建表'Greatest_Movies.genre'(错误号:150)
我查了一下这篇文章:Error Code: 1005. Can't create table '...' (errno: 150)并尝试了很多东西,但没有成功 .
这实际上是:
DROP DATABASE `Greatest_Movies`;
CREATE DATABASE `Greatest_Movies`;
USE `Greatest_Movies` ;
CREATE TABLE IF NOT EXISTS `movie` (
`id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
`film` VARCHAR(255) NOT NULL,
`director` VARCHAR(255) NOT NULL,
`release_year` VARCHAR(255) NOT NULL,
`oscars` TINYINT NULL,
`IMDB_link` VARCHAR(255) NOT NULL,
`film_page` VARCHAR(255) NOT NULL,
`country` VARCHAR(255) NOT NULL,
`genre` TINYINT UNSIGNED NOT NULL,
PRIMARY KEY (`id`) )
ENGINE = InnoDB;
CREATE TABLE IF NOT EXISTS `genre` (
`id` TINYINT UNSIGNED NOT NULL AUTO_INCREMENT,
`name` VARCHAR(255) NOT NULL,
PRIMARY KEY (`id`),
FOREIGN KEY (`id`) REFERENCES `movie`(`genre`))
ENGINE = InnoDB;
我错过了什么?问候
3 回答
这个脚本工作和测试,试试吧:
正如@Solarflare在评论中所说,我做了这个改变:
我想你需要从这一行的末尾删除逗号:
之后: