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

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

  • VARBINARY数据类型

  • _bin整理

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;

请记住,UserId在“ UserId”列上的数据类型为VARBINARY(128)和Index('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;

UserId在“ UserId”列上的数据类型为varchar(128)和index(index_on_UserId)。

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