ERROR 1054(42S22):'字段列表'中的未知列'“CompanyA”'

时间:2017-12-17 23:32:27

标签: mysql quotes

我不确定为什么我会收到这个错误。 ERROR 1054(42S22):'字段列表'中的未知列'“CompanyA”'。

DROP TABLE IF EXISTS `company`;
/*!40101 SET @saved_cs_client     = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `company` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(45) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
/*!40101 SET character_set_client = @saved_cs_client */;

INSERT INTO `company` (`id`, `name`) VALUES (1, “CompanyA”);
INSERT INTO `company` (`id`, `name`) VALUES (2, “CompanyB”);

1 个答案:

答案 0 :(得分:0)

对字符串文字和日期文字使用单引号。

INSERT INTO `company` (`id`, `name`) VALUES (1, 'CompanyA');

默认情况下,双引号与MySQL中的单引号相同,但如果将SQL模式设置为ANSIANSI_QUOTES,则双引号将被视为标识符分隔符,相同作为背叛。

不要使用任何类型的智能引号:

“CompanyA”
‘CompanyA’

以上示例使用智能引号,这些引号与单引号和双引号不同。

如果您使用的是使用智能引号替换直引号的代码编辑器,则需要禁用该编辑器功能。我不知道任何适用于智能引号的编程语言。

有关详细信息,请阅读: