MySQL选择在包含重音的字段上无法正常工作

时间:2018-02-12 11:24:33

标签: mysql character-encoding mariadb

大家好我的数据库有问题,详细说明我有这张表:

CREATE TABLE `energy_vector` (
  `id` char(36) NOT NULL,
  `creation_date` datetime DEFAULT NULL,
  `modification_date` datetime DEFAULT NULL,
  `denomination` varchar(255) DEFAULT NULL,
  `aliases` longtext,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 DEFAULT COLLATE utf8_general_ci;

此表包含一些行,特别是这两行存在问题:

INSERT INTO `energy_vector` (`id`, `creation_date`, `modification_date`, `denomination`, `aliases`) VALUES
('e4814054-5345-7ece-90aa-59e74b0008bb', '2017-10-18 14:38:44', '2017-11-15 15:17:10', 'Elettricità approvvigionata dalla rete elettrica', NULL),
('e59a4f52-8bba-734e-4a5e-59e74b464564', '2017-10-18 14:38:44', '2017-11-15 15:18:09', 'Elettricità prodotta da fonti rinnovabili', NULL);

请注意,这两行在denomination列中都包含重音的字符串。 现在我执行这两个查询:

第一

select * from energy_vector where denomination = 'Elettricità prodotta da fonti rinnovabili';

第二

select * from energy_vector where denomination = 'Elettricità approvvigionata dalla rete elettrica';

第一个查询返回我搜索并正确匹配字符串的行,但是第二个查询没有返回任何内容。为什么呢?

我检查了数十亿的时间,字符串是正确的,但我认为这是一个问题,重点是charset或整理。谁能有解决方案并解释我为什么?提前谢谢。

MySQL版本:10.0.31-MariaDB

0 个答案:

没有答案