我创建了一个表供应商ňMySQL的
供应商描述:我要创建表产品 产品说明会出错创建产品表的外键
Supplier_ID varchar(5) NOT NULL
Supplier_Name varchar(30)
Supplier_Address varchar(50)
Supplier_Contact int(12)
Supplier_Email varchar(30)
PRIMARY KEY(Supplier_ID)
现在, :
Product_ID varchar(5) NOT NULL
Product_Name varchar(30)
Supp_Name varchar(30)
Product_Category varchar(20)
Unit_Price int(11)
Unit_In_Stock int(11)
PRIMARY KEY(Product_ID)
FOREIGN KEY(Supp_Name) REFERENCES Suppliers(Supplier_Name)
但是,当我试图创建产品表时,它的givin克错误:
ERROR 1005 (HY000): Can't create table 'csm.products' (error:150)
CSM是一个数据库的名称。
您应该引用ID,而不是名称 –
@VishalRaut什么'于尔根·D'意思是引用供应商表中的'Supplier_ID'列而不是'Supplier_Name'列。您不能使用引用键来引用不是主键的列。 –