MySQL 错误 150

标签 mysql foreign-keys mysql-workbench

我正在创建一些简单的表,但我无法通过这个外键错误,我不知道为什么。这是下面的脚本。

create TABLE Instructors (

ID varchar(10),
First_Name varchar(50) NOT NULL,
Last_Name varchar(50) NOT NULL,
PRIMARY KEY (ID)
);

create table Courses (

Course_Code varchar(10),
Title varchar(50) NOT NULL,
PRIMARY KEY (Course_Code)

);


create table Sections (
Index_No int,
Course_Code varchar(10),
Instructor_ID varchar(10),
PRIMARY KEY (Index_No),
FOREIGN KEY (Course_Code) REFERENCES Courses(Course_Code)
    ON DELETE cascade
    ON UPDATE cascade,
FOREIGN KEY (Instructor_ID) REFERENCES Instructors(ID)
    ON DELETE set default

);

Error Code: 1005. Can't create table '336_project.sections' (errno: 150)

我的数据类型似乎相同,语法似乎正确。谁能指出我在这里看不到的东西?

我正在使用 MySQL Workbench 5.2

最佳答案

如果您关联不同类型的列,也会发生此错误,例如。源表中的 int 和目标表中的 BigInt。

关于MySQL 错误 150,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16227199/

相关文章:

mysql - 错误!服务器退出而不更新PID文件(/usr/local/var/mysql/`username` .lan.pid)

mysql - 删除数据库中的所有外键(MySql)

mysql - 为什么这个 MySQL 查询返回两次?

mysql - 显示达到特定计数阈值的不同用户

mysql - 计算用户点 - 更新与选择

mysql - 具有逗号分隔值的单个 MySQL 字段

mysql - 帮助完成一个相当简单的 MySQL 查询

mysql - Dopped FK constraint to delete a record and cannot add it after. MySQL

通过工作台进行mysql复制

mysql - MySQL 中的数据归档