create table Machine
(
Machine_ID int primary key,
Machine_Name varchar(30)
Machine_Title varchar(30)
)
create table Part
(
Part_ID int primary key,
Part_Name varchar(30),
Part_Description varchar(30)
)
//How do I make this table below?
create table Machine-Part
(
Machine_ID int foreign key references (Machine.Machine_ID),
Part_ID int foreign key references (Part.Part_ID)
Factory_Note varchar(30);
)
Mysql 提示语法有问题?
期望的结果:让表“Machine-Part”使用“Machine_ID”和“Part_ID”作为两个主键(它们都是外键)。
最佳答案
如果单独声明约束(表级别),则更有意义
create table Machine-Part
(
Machine_ID int NOT NULL ,
Part_ID int NOT NULL ,
Factory_Note varchar(30) NULL,
PRIMARY KEY (Machine_ID, Part_ID),
UNIQUE INDEX (Part_ID, Machine_ID),
foreign key (Machine_ID) references (Machine.Machine_ID),
foreign key (Part_ID) references (Part.Part_ID)
)
链接表也几乎总是需要反向索引
关于mysql - 如何使用两个外键的两个主键创建一个表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9114274/