[英]want to define foreign key as a part of primary key in mysql database table
there is my queries.有我的疑问。 why i am getting error?
为什么我收到错误?
CREATE TABLE researcher(
RID INT AUTO_INCREMENT,
FIRST_NAME VARCHAR(30),
LAST_NAME VARCHAR(30),
COUNTRY VARCHAR(30),
WORKING_YEAR INT,
Experience INT DEFAULT 0,
CURRENT_WORK VARCHAR(30) DEFAULT "no entry",
CONSTRAINT con1 PRIMARY KEY(RID)
)
then然后
CREATE TABLE IF NOT EXISTS reviews
(
RID INT,
REVIEW_ID INT AUTO_INCREMENT,
REVIEW_TIME TIMESTAMP DEFAULT "0000-00-00 00:00:00",
CONSTRAINT for3 FOREIGN KEY(RID) REFERENCES researcher(RID),
CONSTRAINT con5 PRIMARY KEY(RID, REVIEW_ID)
)
then MySQL said:然后 MySQL 说:
#1075 - Incorrect table definition; there can be only one auto column and it must be defined as a key
where is my fault?我的错在哪里?
If use AUTO_INCREMENT , it need to provide primary key on it如果使用 AUTO_INCREMENT ,则需要在其上提供主键
example例子
CREATE TABLE IF NOT EXISTS reviews
(
RID INT,
REVIEW_ID INT AUTO_INCREMENT,
REVIEW_TIME TIMESTAMP DEFAULT "0000-00-00 00:00:00",
CONSTRAINT for3 FOREIGN KEY(RID) REFERENCES researcher(RID),
CONSTRAINT con5 PRIMARY KEY(REVIEW_ID)
)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.