MySQL如何设置不区分大小写
MySQL默认情况下是区分大小写的,但是可以通过设置表的字符集为utf8_general_ci
(ci表示case-insensitive,不区分大小写)或者utf8_unicode_ci
来实现不区分大小写的查询。
以下是设置表字符集为不区分大小写的步骤:
- 创建表时指定字符集:
CREATE TABLE my_table (
id INT PRIMARY KEY,
name VARCHAR(50)
) CHARACTER SET utf8 COLLATE utf8_general_ci;
- 修改现有表的字符集:
ALTER TABLE my_table CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;
- 创建索引时指定字符集:
CREATE INDEX my_index ON my_table (name(50)) CHARACTER SET utf8 COLLATE utf8_general_ci;
- 修改列的字符集:
ALTER TABLE my_table MODIFY COLUMN name VARCHAR(50) CHARACTER SET utf8 COLLATE utf8_general_ci;
请注意,这将影响所有的字符和字符串比较,包括在WHERE
子句、GROUP BY
、ORDER BY
以及其他需要比较字符串的地方。
评论已关闭