MySQL中CREATETABLE语句出错
我想在数据库中创建一个名为Projects的表顺序,它有另一个表客户 以下是我使用的语句:MySQL中CREATETABLE语句出错,mysql,sql,mysql-error-1064,Mysql,Sql,Mysql Error 1064,我想在数据库中创建一个名为Projects的表顺序,它有另一个表客户 以下是我使用的语句: mysql> Create Table ORDER( -> OrderNo Integer(5) Primary Key, -> CustNo Integer(7), -> ItemName Varchar(30), -> Qty Integer(5), -> Price Decimal(6,2) Not Null, -&
mysql> Create Table ORDER(
-> OrderNo Integer(5) Primary Key,
-> CustNo Integer(7),
-> ItemName Varchar(30),
-> Qty Integer(5),
-> Price Decimal(6,2) Not Null,
-> Foreign Key (CustNo) references CUSTOMER(CustID));
但我得到了这个错误:
ERROR 1064 (42000): 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(
OrderNo Integer(5) Primary Key,
CustNo Integer(7),
ItemName Varchar(30),
' at line 1
这里出了什么问题?正如前面提到的注释所示,
ORDER
等都是在MySQL中保留的。完整的列表在文档中
您有三个选项,可以更改表名(我个人的建议)、转义名称或使用数据库限定名称,例如:CREATE table mydb.ORDER….
。如果您选择坚持使用名为table(或column)的关键字,那么如果您忘记在另一个查询中转义它,则以后会有混淆的风险。如果这与客户有关,那么可能是“CustomerOrder”表
CREATE TABLE `ORDER`(
OrderNo Integer(5) Primary Key,
CustNo Integer(7),
ItemName Varchar(30),
Qty Integer(5),
Price Decimal(6,2) Not Null,
Foreign Key (CustNo) references CUSTOMER(CustID)
);
如果您有一个主键,您可能还希望它自动递增,这样就不必手动创建键
CREATE TABLE `ORDER`(
OrderNo Integer(5) Primary Key AUTO_INCREMENT,
CustNo Integer(7),
ItemName Varchar(30),
Qty Integer(5),
Price Decimal(6,2) Not Null,
Foreign Key (CustNo) references CUSTOMER(CustID)
);
正如前面提到的注释,
ORDER
等都是在MySQL中保留的。完整的列表在文档中
您有三个选项,可以更改表名(我个人的建议)、转义名称或使用数据库限定名称,例如:CREATE table mydb.ORDER….
。如果您选择坚持使用名为table(或column)的关键字,那么如果您忘记在另一个查询中转义它,则以后会有混淆的风险。如果这与客户有关,那么可能是“CustomerOrder”表
CREATE TABLE `ORDER`(
OrderNo Integer(5) Primary Key,
CustNo Integer(7),
ItemName Varchar(30),
Qty Integer(5),
Price Decimal(6,2) Not Null,
Foreign Key (CustNo) references CUSTOMER(CustID)
);
如果您有一个主键,您可能还希望它自动递增,这样就不必手动创建键
CREATE TABLE `ORDER`(
OrderNo Integer(5) Primary Key AUTO_INCREMENT,
CustNo Integer(7),
ItemName Varchar(30),
Qty Integer(5),
Price Decimal(6,2) Not Null,
Foreign Key (CustNo) references CUSTOMER(CustID)
);
ORDER
是一个保留关键字,请更改表名或转义此名称。更改表名。如ORDER BY?@mystic saiyan:exactly@GordonLinoff感谢ORDER
是一个保留关键字,请更改您的表名或转义此名称。更改表名。如ORDER BY?@mystic saiyan:exactly@GordonLinoff谢谢