1072 - 表中不存在关键列'UserID' [英] 1072 - Key column 'UserID' doesn't exist in table
本文介绍了1072 - 表中不存在关键列'UserID'的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
嘿伙计我需要你帮助创建这些SQL,我不知道为什么我遇到这个麻烦。它创建了前两个表,但当它到达Driver表时,它会抛出一个拟合
错误:
MySQL说:文档
#1072 - 表中不存在关键列'UserID'
CREATE 表 用户(
UserID int ( 11 ) NOT NULL AUTO_INCREMENT,
FirstName varchar ( 50 )默认 NULL ,
LastName varchar ( 50 )默认 NULL ,
电子邮件 varchar ( 50 )默认 NULL ,
密码 varchar ( 50 )默认 NULL ,
PRIMARY KEY (UserID)
)ENGINE = INNODB;
CREATE TABLE Car(
CarID < span class =code-keyword> int ( 11 ) NOT NULL AUTO_INCREMENT,
使 varchar ( 50 ) 默认 NULL ,
年 int ( 11 )默认 NULL ,
颜色 varchar ( 50 )默认 NULL ,
PRIMARY KEY (CarID)
)ENGINE = INNODB;
CREATE TABLE 驱动程序(
DriverID int ( 11 ) NOT NULL AUTO_INCREMENT,
PRIMARY KEY (DriverID),
FOREIGN KEY (UserID) REFERENCES < span class =code-keyword>用户(UserID),
FOREIGN KEY (CarID) REFERENCES Car(CarID)
)ENGINE = INNODB;
CREATE TABLE 请求(
RequestID int ( 11 ) NOT NULL AUTO_INCREMENT,
来自 varchar ( 50 )默认 NULL ,
到 varchar ( 50 ) default NULL ,
RequestDate 日期 默认 NULL ,
PRIMARY KEY (RequestID),
FOREIGN KEY (UserID) REFERENCES 用户(UserID),
FOREIGN KEY (CarID) REFERENCES Car(CarID)
)ENGINE = INNODB;
感谢您的帮助。
解决方案
您正在尝试在尚未创建的列上设置外键。试试这个...
创建 表驱动程序(
DriverID int ( 11 ) NOT NULL AUTO_INCREMENT,
UserID int ,
CarID int ,
PRIMARY KEY (DriverID),
FOREIGN KEY (UserID) REFERENCES 用户(UserID),
外国 < span class =code-keyword> KEY (CarID) REFERENCES Car(CarID)
)ENGINE = INNODB;
Hey guys I need your help creating these SQL's, I don't know why I am running into this trouble. it creates the first 2 tables, but when it gets to the Driver table, it throws a fit
Error:
MySQL said: Documentation
#1072 - Key column 'UserID' doesn't exist in table
CREATE TABLE User (
UserID int(11) NOT NULL AUTO_INCREMENT,
FirstName varchar(50) default NULL,
LastName varchar(50) default NULL,
Email varchar(50) default NULL,
Password varchar(50)default NULL,
PRIMARY KEY (UserID)
)ENGINE=INNODB;
CREATE TABLE Car (
CarID int(11) NOT NULL AUTO_INCREMENT,
Make varchar(50) default NULL,
Year int(11) default NULL,
Color varchar(50) default NULL,
PRIMARY KEY (CarID)
)ENGINE=INNODB;
CREATE TABLE Driver (
DriverID int(11) NOT NULL AUTO_INCREMENT,
PRIMARY KEY (DriverID),
FOREIGN KEY (UserID) REFERENCES User (UserID),
FOREIGN KEY (CarID) REFERENCES Car (CarID)
)ENGINE=INNODB;
CREATE TABLE Request (
RequestID int(11) NOT NULL AUTO_INCREMENT,
From varchar(50) default NULL,
To varchar(50) default NULL,
RequestDate Date default NULL,
PRIMARY KEY (RequestID),
FOREIGN KEY (UserID) REFERENCES User (UserID),
FOREIGN KEY (CarID) REFERENCES Car (CarID)
)ENGINE=INNODB;
Thanks for your help.
解决方案
You are trying to set up a Foreign key on a column that you have not yet created. Try this ...
CREATE TABLE Driver ( DriverID int(11) NOT NULL AUTO_INCREMENT, UserID int, CarID int, PRIMARY KEY (DriverID), FOREIGN KEY (UserID) REFERENCES User (UserID), FOREIGN KEY (CarID) REFERENCES Car (CarID) )ENGINE=INNODB;
这篇关于1072 - 表中不存在关键列'UserID'的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文