运行查询以创建表时出现错误 1064?
Posted
技术标签:
【中文标题】运行查询以创建表时出现错误 1064?【英文标题】:Getting error 1064 while running query for table creation? 【发布时间】:2017-12-31 18:02:02 【问题描述】:我已经创建了客户和产品表。在 phpmyadmin 中运行以下命令时出现此错误。CREATE TABLE orders ( id INT NOT NULL AUTO_INCREMENT,
orderNumber INT,
productId INT,
customerId INT,
orderDate DATETIME default CURRENT_TIMESTAMP,
PRIMARY KEY(id),
PRIMARY KEY (customerId) REFERENCES customers(id) ,
FOREIGN KEY (productId) REFERENCES products(id)
);
1064 error
【问题讨论】:
我认为您正在尝试创建Foreign Key
,但您声明了PRIMARY KEY (customerId) REFERENCES customers(id)
。更正倒数第二行。改为FOREIGN KEY
是的,你解决了它。
【参考方案1】:
不能创建多个主键。
试试这个代码。
CREATE TABLE orders (
id INT NOT NULL AUTO_INCREMENT,
orderNumber INT,
productId INT,
customerId INT,
orderDate DATETIME default CURRENT_TIMESTAMP,
PRIMARY KEY(id),
FOREIGN KEY (customerId) REFERENCES customers(id) ,
FOREIGN KEY (productId) REFERENCES products(id));
【讨论】:
你是 INT(5) 吗?但错误似乎在最后两行 见我上面的评论。无法创建 2 个主键。我认为倒数第二行应该是外键。 是的,不能创建多个主键。 你迟到了兄弟:p @sameera @pratyush choudhary 好的,但我想你会同意我的回答。如果我的回答是正确的,你能接受吗?以上是关于运行查询以创建表时出现错误 1064?的主要内容,如果未能解决你的问题,请参考以下文章