【问题标题】:Why Is MySQL Bridge Table Not Working?为什么 MySQL 桥表不工作?
【发布时间】:2023-11-18 09:28:01
【问题描述】:

我目前有以下表格:CategoryProductPaymentUser

以下是 MySQL 的桥表脚本:

CREATE TABLE Order
(
  FOREIGN KEY UID MEDIUMINT REFERENCES User (UID),
  FOREIGN KEY PID MEDIUMINT REFERENCES Product(PID),
  FOREIGN KEY PayID REFERENCES Payment(PayID),
  PRIMARY KEY (UID,PID)
)

MySql 出现以下错误:

#1064 - You have an error in your SQL syntax; check the manual
that corresponds to your MySQL server version for the right syntax 
to use near 'Order (
  FOREIGN KEY UID MEDIUMINT REFERENCES User (UID),
  FOREIGN KEY PID MEDI' at line 1

请注意这是最后一张桌子。

【问题讨论】:

  • 我不知道你在说什么。
  • 有什么问题?
  • @StrawberryI 使问题更加清晰。
  • @Robbert 我更清楚地说明了这个问题。

标签: mysql create-table bridge mysqladmin


【解决方案1】:

订单是一个保留字。您应该更改它,或者您可以使用反引号转义名称:

CREATE TABLE `Order` ( .... )

【讨论】: