【发布时间】:2020-02-05 08:15:31
【问题描述】:
我尝试将表创建到我的数据库中,但每次尝试时都显示已成功连接。 无法创建表。
您的 SQL 语法有错误;检查手册 对应于您的 MariaDB 服务器版本,以便使用正确的语法 近 Order( Order_id int(8) AUTO_INCREMENT, Cus_id int(8), Order_date 在第 1 行
无法创建表。
您的 SQL 语法有错误;检查手册 对应于您的 MariaDB 服务器版本,以便使用正确的语法 在第 8 行的“Order(Order_id))”附近
我已经包含了下面的代码。
CREATE TABLE Order(
Order_id int(8) AUTO_INCREMENT,
Cus_id int(8),
Order_date TIMESTAMP,
Primary Key (Order_id),
Foreign Key (Cus_id) References Customer(Cus_id))
CREATE TABLE OrderLine(
Order_id int(8),
P_code int(8),
Quantity float,
Price float,
Constraint PK_Orderline Primary Key (P_code,Order_id),
Foreign Key (P_code) References Product(P_code),
Foreign Key (Order_id) References Order(Order_id))
【问题讨论】:
-
为什么是
INT(8)而不仅仅是INT? 8 是垃圾,无论如何都会被忽略。还可以使用DECIMAL(x,y)来表示价格,不要将FLOAT用于anything 财务。它会以各种不幸的方式四舍五入和破坏您的数据。 -
在
Order和(语法之间添加空格。MYSQL假设table name为Order( -
谢谢大家,我刚刚将“订单”重命名为“订单”,它解决了问题