这是我失败的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行
文档说使用引号......有什么问题?
使用`
而不是'
:
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)
)
您应该使用反引号(`)来引用列名,而不是单引号(')。在波形键(〜)上方查看。
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)
)
你为什么用引号?你应该使用反引号。试试这个:
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)
)
请在表定义中使用普通字符。您可以使用下划线“_”代替“ - ”。
当您查询数据库时,必须始终使用引号。对我来说不可能! :)
如果您想要遵循这条道路,请使用报价
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)
)