Mysql 如何用相似的字母区分两个ID
是的,我知道那两个一定是同一个城市。让我们暂时假设这是两个完全不同的城市Mysql 如何用相似的字母区分两个ID,mysql,Mysql,是的,我知道那两个一定是同一个城市。让我们暂时假设这是两个完全不同的城市 为什么我会得到重复的条目?字母是不同的。如何使mysql以不同的方式处理这两个条目?几乎可以肯定,您使用的字符集和/或排序规则不支持您试图在此处插入的字母差异 这样做行不通,会导致您遇到的问题: INSERT INTO `tablecity` (`City`, `Country`) VALUES ('Itajaí','Brazil'); INSERT INTO `tablecity` (`City`, `Country`)
为什么我会得到重复的条目?字母是不同的。如何使mysql以不同的方式处理这两个条目?几乎可以肯定,您使用的字符集和/或排序规则不支持您试图在此处插入的字母差异 这样做行不通,会导致您遇到的问题:
INSERT INTO `tablecity` (`City`, `Country`) VALUES ('Itajaí','Brazil');
INSERT INTO `tablecity` (`City`, `Country`) VALUES ('itajai','Brazil');
使用utf8
/,您不会出错,如下表语法所示:
CREATE TABLE `yourtable` (
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
`city` varchar(28),
`country` varchar(28),
PRIMARY KEY (`id`),
UNIQUE KEY `city` (`city`)
) ENGINE=InnoDB DEFAULT CHARSET=latin;
(基于最佳猜测的表格布局)几乎可以肯定,您使用的字符集和/或排序规则不支持您试图在此处插入的字母差异 这样做行不通,会导致您遇到的问题:
INSERT INTO `tablecity` (`City`, `Country`) VALUES ('Itajaí','Brazil');
INSERT INTO `tablecity` (`City`, `Country`) VALUES ('itajai','Brazil');
使用utf8
/,您不会出错,如下表语法所示:
CREATE TABLE `yourtable` (
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
`city` varchar(28),
`country` varchar(28),
PRIMARY KEY (`id`),
UNIQUE KEY `city` (`city`)
) ENGINE=InnoDB DEFAULT CHARSET=latin;
(基于最佳猜测的表格布局)请显示表格定义。表和字段的编码/排序规则是什么?城市列的字符集和排序规则是什么?您还应该显示用于查询数据库的代码。显示
desc tableName的结果
请显示表定义。表和字段的编码/排序规则是什么?城市列的字符集和排序规则是什么?您还应该显示用于查询数据库的代码。显示desc tableName
I已使用UTF 8的结果。隐马尔可夫模型。。。我认为该表设置为使用utf8,请确保您也使用utf8\u bin
作为排序规则。我将其从utf8\u unicode\u ci更改为。它起作用了。哎呀,我想知道为什么utf8\uUnicode\uCI不这样做?评论不错。选择作为回答我已经使用UTF 8。隐马尔可夫模型。。。我认为该表设置为使用utf8,请确保您也使用utf8\u bin
作为排序规则。我将其从utf8\u unicode\u ci更改为。它起作用了。哎呀,我想知道为什么utf8\uUnicode\uCI不这样做?评论不错。被选为答案