我需要创建表并执行以下操作:
CREATE TABLE "home" (
"id" int(11) NOT NULL AUTO_INCREMENT,
"address" varchar(200) CHARACTER SET latin1 COLLATE latin1_general_ci NOT NULL,
PRIMARY KEY ("id")
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=latin1 COLLATE=latin1_bin;
执行此查询时,我得到以下错误:
Errore SQL [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 '"causali" (
"id" int(11) NOT NULL AUTO_INCREMENT,
"address" va' at line 1
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 '"home" (
"id" int(11) NOT NULL AUTO_INCREMENT,
"adddress" va' at line 1
有人能帮我吗?
1条答案
按热度按时间mnemlml81#
mysql不喜欢在表/列/别名上加双引号,除非我们启用
ANSI_QUOTES
模式。将“视为标识符引号字符(如`引号字符),而不是字符串引号字符。启用此模式后,仍然可以使用反勾号引用标识符。在启用ansi\u引号的情况下,不能使用双引号来引用文字字符串,因为它们被解释为标识符。
默认情况下禁用此模式。现在,您可以在它们周围使用倒勾号,也可以不使用双引号(除非它是保留关键字,否则您必须在它周围使用倒勾号)。