CREATE TABLE sales (
ID INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
[Item Type] VARCHAR(30) NULL,
[Sales Channel] VARCHAR(30) NULL,
[Order Priority] VARCHAR(30) NULL,
[Order Date] DATE NULL,
[Order ID] DECIMAL NULL,
[Ship Date] DATE NULL
)
[亲爱的,请介绍如何正确使用表格列的语法:例如项目类型-这里“类型”已经存在于mysql中,销售渠道-这里“通道”已经存在于mysql中作为操作员名称。但我需要用作表的列名。谢谢!
如果表名或列名是keyword或包含空格,而您仍要使用该名称,请在反引号'`'之间加引号。因此您的查询应如下所示:
CREATE TABLE sales (
ID INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
`Item Type` VARCHAR(30) NULL,
`Sales Channel` VARCHAR(30) NULL,
`Order Priority` VARCHAR(30) NULL,
`Order Date` DATE NULL,
`Order ID` DECIMAL NULL,
`Ship Date` DATE NULL
);
在SQL Fiddle上尝试一下:http://sqlfiddle.com/#!9/0332f0
固定您的列名,这样就不必对其进行转义!这将使所有后续工作变得更加简单:
CREATE TABLE sales (
SalesID INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
ItemType VARCHAR(30) NULL,
SalesChannel VARCHAR(30) NULL,
OrderPriority VARCHAR(30) NULL,
OrderDate DATE NULL,
OrderID DECIMAL NULL,
ShipDate DATE NULL
);
我建议将表名用于id
。另外,您正在使用没有精度或小数位数的DECIMAL
。高度不推荐。不依赖于数据库默认值(您甚至知道它们是什么吗?)。
您还应该包括外键引用。因此,您应该对订单表具有外键约束。