广告
返回顶部
首页 > 资讯 > 数据库 >MySql查询不区分大小写解决方案
  • 905
分享到

MySql查询不区分大小写解决方案

mysql数据库sqlmybatisjava 2023-09-05 16:09:10 905人浏览 安东尼
摘要

背景 当我们输入不管大小写都能查询到数据,例如:输入 lingyejun 或者Lingyejun ,LingYeJun都能查询同样的结果,说明查询条件对大小写不敏感。CREATE TABLE NAME(name VARCHAR(1

背景

当我们输入不管大小写都能查询到数据,例如:输入 lingyejun 或者Lingyejun ,LingYeJun都能查询同样的结果,说明查询条件对大小写不敏感。CREATE TABLE NAME(name VARCHAR(10));

对这个表,缺省情况下,下面两个查询的结果是一样的:

SELECT * FROM TABLE NAME WHERE name='lingyejun';

SELECT * FROM TABLE NAME WHERE name='Lingyejun';

办法

解决方案一:

于是怀疑Mysql的问题。做个实验:直接使用客户端用sql查询数据库。 发现的确是大小不敏感 。

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

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

一般而言我们设置字符集注意以下两种:

utf8_general_ci --不区分大小写

utf8_bin--区分大小写

当字符设置为不区分大小写时的解决办法:

可以将查询条件用binary()括起来。  比如:  

select * from TableA where binary columnA ='lingyejun';

可以修改该字段的collation 为 binary

比如:

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

解决方案二:

mysql查询默认是不区分大小写的 如:

select * from some_table where str=‘lingyejun';select * from some_table where str='LINGYEJUN';

得到的结果是一样的,如果我们需要进行区分的话可以按照如下方法来做: 

第一种方法:要让mysql查询区分大小写,可以:

select * from some_table where binary str='lingyejun'select * from some_table where binary str='LINGYEJUN'

第二方法:

在建表时时候加以标识

create table some_table(   str char(20) binary)

原理:

对于CHAR、VARCHAR和TEXT类型,BINARY属性可以为列分配该列字符集的 校对规则。BINARY属性是指定列字符集的二元 校对规则的简写。排序和比较基于数值字符值。因此也就自然区分了大小写。

本篇文章如有帮助到您,请给「翎野君」点个赞,感谢您的支持。

首发链接:https://www.cnblogs.com/lingyejun/p/17186057.html

来源地址:https://blog.csdn.net/lingyejun/article/details/129374213

您可能感兴趣的文档:

--结束END--

本文标题: MySql查询不区分大小写解决方案

本文链接: https://www.lsjlt.com/news/395667.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • MySql查询不区分大小写解决方案
    背景 当我们输入不管大小写都能查询到数据,例如:输入 lingyejun 或者Lingyejun ,LingYeJun都能查询同样的结果,说明查询条件对大小写不敏感。CREATE TABLE NAME(name VARCHAR(1...
    99+
    2023-09-05
    mysql 数据库 sql mybatis java
  • 解决MySQL查询不区分大小写的方法
    本篇内容主要讲解“解决MySQL查询不区分大小写的方法”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“解决MySQL查询不区分大小写的方法”吧!今天遇到一个情况,...
    99+
    2022-10-18
  • 解决MySQl查询不区分大小写的方法讲解
    问题 最近,在用SSH框架完成一个实践项目时,碰到了一个莫名其妙的Bug困扰了我好久,最后终于解决,记录如下。 问题:同学在测试系统的时候突然发现,数据库保存的账户本来应该是admin,结果该同学用Adm...
    99+
    2022-10-18
  • mysql查询区分大小写吗
    本篇内容主要讲解“mysql查询区分大小写吗”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“mysql查询区分大小写吗”吧! mysq...
    99+
    2022-10-19
  • mysql如何查询区分大小写
    这篇文章主要介绍mysql如何查询区分大小写,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完! 在mysql中,可以利用binary关键字查询区分大小写,该关...
    99+
    2022-10-19
  • mysql查询如何区分大小写
    这篇文章主要介绍mysql查询如何区分大小写,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完! 在mysql中,可以利用select查询语句配合bi...
    99+
    2022-10-19
  • django orm中如何解决查询结果不区分大小写问题
    小编给大家分享一下django orm中如何解决查询结果不区分大小写问题,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!1.1.1...
    99+
    2022-10-19
  • Mysql模糊查询中是否区分大小写
    这篇文章将为大家详细讲解有关Mysql模糊查询中是否区分大小写,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。COLLATE通常是和数据编码(CHARSET)相关的,一般来说每种CHARSET...
    99+
    2023-06-15
  • mysql中怎么实现查询区分大小写
    这期内容当中小编将会给大家带来有关mysql中怎么实现查询区分大小写,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。查询区分大小写的问题 mysql查询默认是不区...
    99+
    2022-10-18
  • 浅谈Mysql大数据分页查询解决方案
    目录1.简介2.分页插件使用3.sql测试与分析3.1 limit现象分析3.2 解决之道4 测试时走过的坑4.1 百万数据内容都一样4.2 写sql时,把"77"...
    99+
    2022-11-13
  • 怎么解决mysql查询字段内容无法区分大小写问题
    这篇文章将为大家详细讲解有关怎么解决mysql查询字段内容无法区分大小写问题,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。 关...
    99+
    2022-10-18
  • Sql like模糊查询 区分大小写
    Sql模糊查询,Like默认是不区分大小写的 使用Like时,怎么支持大小写呢? upper、lower,只能模糊所有的内容,不能区分内容中的大小写。 sqlite数据库对text字段默认是大小写敏感的,但是唯独在模糊查询时不起作用。 解...
    99+
    2021-02-16
    Sql like模糊查询 区分大小写
  • 怎么在mongodb中实现不区分大小写查询
    在mongodb中实现不区分大小写查询的方法:1.启动mongodb;2.登录mongodb数据库;3.使用数据库;4.通过设置$options属性实现不区分大小写;具体步骤如下:首先,在命令行中启动mongodb服务;net start ...
    99+
    2022-10-16
  • 如何让mysql不区分大小写
    今天小编给大家分享一下如何让mysql不区分大小写的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一...
    99+
    2022-10-19
  • 深入探究Mysql模糊查询是否区分大小写
    前言 近期,一直在忙着写一个小小的个人博客项目,在实现 “全局搜索” 功能时,发现mysql模糊查询语句有点儿神奇(本小白刚刚步入编程阶段,所以可能让大家见笑了,哈哈哈),有时候 m...
    99+
    2022-11-12
  • mysql如何设置不区分大小写
    mysql设置不区分大小写 windows下 到安装mysql的目录,修改my.ini文件 在文件最后一行加上下面一句话 lower_case_table_names=1 说明 0:区分大小写,1:不区分大小写 ...
    99+
    2022-05-11
    mysql 不区分大小写
  • mysql设置不区分表名大小写
    MySql默认是区分表名大小的,为了不区分表名大小写,我们需要完成以下配置 十分简单 1.使用root用户,修改/etc/my.cnf文件 在[mysqld]下添加 lower_case_table_names=1 ...
    99+
    2023-08-31
    mysql Powered by 金山文档
  • javascript中的方法区不区分大小写
    今天小编给大家分享一下javascript中的方法区不区分大小写的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我...
    99+
    2022-10-19
  • mysql跨库查询解决方案
    第一种跨库查询,是在同一个mysql服务器下两个不同的数据库之间的联查,关系如下图 在同一个mysql服务器下,不同的两个数据直接加上库名就可以实现跨库查询了 select * from t_test1 t1, test2.t_...
    99+
    2023-08-19
    mysql
  • Oracle别名大小写 -----解决方案
    今天做bootstrap的treeview,要求输入节点ID id,父节点ID pid,文本 text但是执行的sql别名都是大写,所以找了下orcl的别名如何小写的问题代码如下:SELECT&nb...
    99+
    2022-10-18
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作