MySQL 如何实现区分大小写的唯一性和不区分大小写的搜索

MySQL 如何实现区分大小写的唯一性和不区分大小写的搜索

您可以通过以下两种方式实现区分大小写的唯一性和不区分大小写的搜索。

  • VARBINARY 数据类型
  • _bin 排序规则

阅读更多:MySQL 教程

VARBINARY 数据类型

要使用 VARBINARY 数据类型,请先创建一个表。创建表的查询如下所示:

mysql> create table SearchingDemo2
   -> (
   -> UserId VARBINARY(128) NOT NULL,
   -> UNIQUE KEY index_on_UserId2(UserId )
   -> )ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
Query OK, 0 rows affected, 1 warning (0.99 sec)

请注意 UserId 的数据类型为 VARBINARY(128),而在列‘UserId’上的索引(‘index_on_UserId2’)。

_bin 排序规则

第二种方式如下。让我们创建一个新表 –

mysql> create table SearchingDemo
   -> (
   -> UserId varchar(128) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL,
   -> UNIQUE KEY index_on_UserId(UserId )
   -> )ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
Query OK, 0 rows affected, 2 warnings (0.88 sec)

UserId 的数据类型为 varchar(128),而在列‘UserId’上的索引为 index(index_on_UserId)。

以上两种方法都能在MySQL中实现区分大小写的唯一性和不区分大小写的搜索。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程