mysql 如何解决字段不区分大小写的问题

mysql 如何解决字段不区分大小写的问题mysql 如何解决字段不区分大小写的问题

大家好,又见面了,我是你们的朋友全栈君。

1、mysql默认情况下是否区分大小写,使用show Variables like ‘%table_names’查看lower_case_table_names的值;

show Variables like ‘%lower_case_table_names’
0代表区分,1代表不区分。

2,LINUX下的MYSQL默认是要区分表名大小写的 ,而在windows下表名不区分大小写

(1). 用ROOT登录,修改/etc/my.cnf

(2) 在[mysqld]下加入一行:lower_case_table_names=1

3.通过查询资料发现需要设置collate(校对) 。

collate规则:
*_bin: 表示的是binary case sensitive collation,也就是说是区分大小写的
*_cs: case sensitive collation,区分大小写
*_ci: case insensitive collation,不区分大小写

设置字符集:
utf8_general_ci –不区分大小写

utf8_bin–区分大小写

6,可以通过binary关键字,方法有两种:
  1. 可以将查询条件用binary()括起来。 比如:

    select * from Table where binary column =‘aaa’;

  2. 可以修改该字段的collation 为 binary
    比如:

ALTER TABLE TABLENAME MODIFY COLUMN COLUMNNAME VARCHAR(100) BINARY CHARACTER 
SET utf8 COLLATE utf8_bin DEFAULT NULL;

3,在建表时加以标识:

create table `usertable`( 
 `id` varchar(32) binary, 
 PRIMARY KEY (`id`) 
) ENGINE=InnoDB DEFAULT CHARSET=utf8; 
CREATE TABLE `usertable` ( 
 `id` varchar(32) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '', 
 PRIMARY KEY (`id`) 
) ENGINE=InnoDB DEFAULT CHARSET=utf8; 

原理:
对于CHAR、VARCHAR和TEXT类型,BINARY属性可以为列分配该列字符集的 校对规则。
BINARY属性是指定列字符集的二元 校对规则的简写。
排序和比较基于数值字符值。因此也就自然区分了大小写。
以上通过两种方案解决了MySql查询不区分大小写的问题,希望对大家有所帮助,更多有mysql数据查询问题,请登录本站学习。

原文链接

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/105865.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长

相关推荐

  • ubuntu18.04 linux journalctl 命令

    ubuntu18.04 linux journalctl 命令目录Help 输出所有的日志记录 匹配(match) 把日志保存到文件中 限定日志所能占用的最高容量 查看某次启动后的日志 查看指定时间段的日志 同时应用match和时间过滤条件 按unit过滤日志 通过日志级别进行过滤 实时更新日志 只显示最新的n行 控制输出 按可执行文件的路径过滤 查看内核日志 总结journalctl用来查询systemd…

    2022年5月24日
  • Hadoop的生态系统介绍

    Hadoop的生态系统介绍一.Hadoop生态系统架构二.生态系统介绍2.1HDFS(分布式文件存储系统)Hadoop分布式文件系统是Hadoop项目的两大核心之一,是针对谷歌文件系统(GoogleFileSystem,GFS)的开源实现。是Hadoop体系中数据存储管理的基础。它是一个高度容错的系统,能检测和应对硬件故障,用于在低成本的通用硬件上运行。HDFS简化了文件的一致性模型,通过流式数据访问…

    2022年5月19日
  • pycharm2021.11激活码(JetBrains全家桶)

    (pycharm2021.11激活码)这是一篇idea技术相关文章,由全栈君为大家提供,主要知识点是关于2021JetBrains全家桶永久激活码的内容IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.html1M3Q9SD5XW-eyJsa…

    2022年3月28日
  • matlab在axis,matlab中axis的用法

    matlab在axis,matlab中axis的用法>>axis([02*pi-0.90.9])图5.1.3使用了图形修饰的plot函数绘制的正弦曲线5.1.3图形的比较显示在一般默认的情况下,MATLAB每次使用plot……>>axis([02*pi-0.90.9])图5.1.3使用了图形修饰的plot函数绘制的正弦曲线5.1.3图形的比较显示在一般默认的情况下…

    2022年6月3日
  • Android——NDK基础概念——ndk-build介绍

    Android——NDK基础概念——ndk-build介绍

    2022年3月3日
  • 股票软件开发

    股票软件开发求助编辑百科名片股票软件开发顾名思义就是股票软件开发公司为公司或个人开发制作自已个性化的股票分析软件,从此彻底告别依赖别人的技术平台支持,从股票软件名称,公司LOGO,启动界面,系统功能,特色指标、特色选股、软件注册后台,信息发布平台,机构数据,主力行情,大盘分析,个股分析,资金分析,热点分析等等一系列功能上实行自已品牌化管理运行。目录

    2022年4月10日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号