【发布时间】:2012-07-01 23:05:57
【问题描述】:
我有一个如下所示的表格:
mysql> SHOW COLUMNS FROM Users;
+------------+--------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+------------+--------------+------+-----+---------+----------------+
| user_id | int(10) | NO | PRI | NULL | auto_increment |
| username | varchar(50) | YES | | NULL | |
| password | varchar(255) | YES | | NULL | |
| email | varchar(255) | YES | | NULL | |
| phone | varchar(255) | YES | | NULL | |
我正在尝试像这样创建一个新表:
create table jobs (id int, FOREIGN KEY (user_id) REFERENCES Users(user_id)) ENGINE=INNODB;
但我收到此错误:
ERROR 1072 (42000): Key column 'user_id' doesn't exist in table
我确定我遗漏了一些非常基本的东西。
【问题讨论】:
-
jobs中没有列user_id... -
不应该在创建作业表的过程中创建它吗?
-
你不是在创建它,你需要指定列名和数据类型,以便外键可以使用。
标签: mysql sql foreign-keys primary-key