这是我失败的MySQL代码:
CREATE TABLE product (
id int NOT NULL AUTO_INCREMENT,
'item-name' VARCHAR(255) NOT NULL,
'item-description' TEXT,
'listing-id' VARCHAR(50),
PRIMARY KEY (id)
)
错误是:
创建表时出错:SQL语法中有错误;检查手册 这对应于您的MySQL服务器版本,以便在正确的语法附近使用 'item-name'VARCHAR(255)NOT NULL,'item-description'TEXT,'listing-id''在第3行
文档说使用引号......出了什么问题?
答案 0 :(得分:6)
需要使用`
代替'
:
CREATE TABLE product (
id int NOT NULL AUTO_INCREMENT,
`item-name` VARCHAR(255) NOT NULL,
`item-description` TEXT,
`listing-id` VARCHAR(50),
PRIMARY KEY (id)
)
答案 1 :(得分:1)
为什么使用报价?你应该使用反引号。试试这个:
CREATE TABLE product (
id int NOT NULL AUTO_INCREMENT,
`item-name` VARCHAR(255) NOT NULL,
`item-description` TEXT,
`listing-id` VARCHAR(50),
PRIMARY KEY (id)
)
答案 2 :(得分:1)
您应该使用反引号(`)来引用列名,而不是单引号(')。在波形键(〜)上方查看。
CREATE TABLE product (
id INT NOT NULL AUTO_INCREMENT,
`item-name` VARCHAR(255) NOT NULL,
`item-description` TEXT,
`listing-id` VARCHAR(50),
PRIMARY KEY (id)
)
答案 3 :(得分:0)
请在表格定义中使用普通字符。您可以使用下划线“_”代替“ - ”。
当您查询数据库时,必须始终使用引号。对我来说不可能! :)
如果您想要遵循这条道路,请使用引用
CREATE TABLE product (
id INT NOT NULL AUTO_INCREMENT,
`item-name` VARCHAR(255) NOT NULL,
`item-description` TEXT,
`listing-id` VARCHAR(50),
PRIMARY KEY (id)
)