mysql - 另一个“错误代码:1215。无法添加外键约束”
问题描述
我有一张桌子
CREATE TABLE users(
id BIGINT UNSIGNED AUTO_INCREMENT,
...
PRIMARY KEY (id));
现在,我想添加另一个表
CREATE TABLE foo (
id BIGINT UNSIGNED AUTO_INCREMENT,
user_id bigint unsigned,
...
PRIMARY KEY (id),
FOREIGN KEY (user_id) REFERENCES mydb.users(id) ON DELETE CASCADE ON UPDATE CASCADE
);
由于以下原因,我无法创建上表
Error Code: 1215. Cannot add foreign key constraint
我看不出有什么不对。我错过了什么?
解决方案
检查您使用的是哪个数据库引擎。你应该使用 InnoDB 而不是 MyISAM。
MyISAM 不支持外键。
推荐阅读
- r - 在ggplot中按组堆叠发散条形图
- flutter - Flutter 测试小部件 find.byType(TextField) 有效,find.byWidget(TextField()) 无效。为什么?
- c++ - 猜数字游戏不正确输出
- attributeerror - 返回Nonetype错误Python的局部变量
- javascript - 除非存在文本,否则赛普拉斯刷新页面?
- rust - 如何将字符串切片引用移动到函数,使其生命周期在传递的函数内消亡?
- mongodb - 嵌套数组对象的 $lookup 聚合
- airflow - 结合 BranchPythonOperator 和 PythonVirtualenvOperator
- haskell - 消除 Haskell 镜头中的“翻转”
- c++ - 我可以将私有基础的所有成员拉入继承类的公共范围吗?