[英]mysql foreign key using phpmyadmin
我无法在phpmyadmin中创建外键。 我使用以下查询创建了2个表。第一个表已创建,但是当我使用第二个查询时出现错误
#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 ( Orderid INT NOT NULL, cost INT, CustId INT NOT NULL, PRIMARY KEY(Or' at line 1
这是我的第一张桌子:
CREATE TABLE customer
(
CustId INT NOT NULL,
first_name VARCHAR(30),
PRIMARY KEY (CustId)
);
这是我的第二张桌子:
CREATE TABLE order
(
Orderid INT NOT NULL,
cost INT,
CustId INT NOT NULL,
PRIMARY KEY(Orderid),
INDEX (CustId),
FOREIGN KEY (CustId) REFERENCES customer (CustId)
);
所以我在这里做错了吗? 我如何创建此表并在phpmyadmin中实现外键。
order
是MySQL保留字(在ORDER BY
子句中使用),如果要将其用作表或列的名称,则必须将其括在反引号中。
CREATE TABLE `order`
(
Orderid INT NOT NULL,
cost INT,
CustId INT NOT NULL,
PRIMARY KEY(Orderid),
INDEX (CustId),
FOREIGN KEY (CustId) REFERENCES customer (CustId)
);
每当在查询中引用它时,您都必须记住将其放在反引号中。 如果您只是为表选择其他名称,则可以避免麻烦。
这也将帮助您:
如果您问我,应始终使用反引号。 但是,出于某些原因,团队可能更喜欢不使用它们。
好处:
缺点:
参考: http : //dev.mysql.com/doc/refman/5.0/en/identifiers.html
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.