mysql - 创建表的 SQL 错误

标签 mysql sql ddl

我已经创建了“电影”和“位置”表,但我似乎遇到了一个奇怪的错误,我想知道是否有人能发现我在这里做错了什么。

CREATE TABLE ShowTimes
(
   showId int NOT NULL, 
   movieid int NOT NULL,        
   cinemaID int NOT NULL,
   showDate date,
   showTime time,

   PRIMARY KEY (showId),
   FOREIGN KEY ShowTimes (movieid) REFERENCES Movies (movieId),
   FOREIGN KEY (cinemaID) REFERENCES Location (cinemaId)
)

错误:

Error Code: 1005. Can't create table 'galaxy.showtimes' (errno: 150) 0.078 sec

CREATE TABLE ShowTimes
(
   showId int NOT NULL, 
   movieid int NOT NULL, 
   cinemaID int NOT NULL,
   showDate date,
   showTime time,
   PRIMARY KEY (showId),
   FOREIGN KEY (movieid) REFERENCES Movies (movieId),
   FOREIGN KEY (cinemaID) REFERENCES Location (cinemaId)
);

INSERT INTO ShowTimes VALUES (1, 1, 1, '2013-09-20', '17:00:00'),
                             (2, 1, 1, '2013-09-20', '19:00:00'),
                             (3, 3, 4, '2013-09-20', '17:00:00'),
                             (4, 2, 3, '2013-09-20', '15:15:00');

最佳答案

简单的错误:看看你的第一个外键。您正在引用表 ShowTimes。尝试删除它。

关于mysql - 创建表的 SQL 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26070522/

相关文章:

mysql - Java和mySQL从相关数据库索引中选择

sql - 连接 sql 查询的结果

sql - CREATE TABLE 中属性后的 NULL 约束?

sql - mysql 查询监听器

Php mysql 查询显示不应该显示的数据

sql - 向 PostgreSQL 数据库的所有模式中的表添加一列

database - 如何利用 PostgreSQL DDL 解析器?

phpmyadmin 使用 mysql 连接访问

php - 尝试使用子查询将数据插入字段

mysql - 使用 Like 和 Not Like 从 2 个表中选择