广告
返回顶部
首页 > 资讯 > 数据库 >MySQL 字符类型大小写敏感
  • 272
分享到

MySQL 字符类型大小写敏感

MySQL大小写MySQL大小写敏感 2022-05-15 11:05:23 272人浏览 八月长安
摘要

Mysql字符类型默认是不区分大小写的,即select * from t where name='AAA'与='aaa'没区别,以下是测试的例子 (root@localhost)[hello]

Mysql字符类型默认是不区分大小写的,即select * from t where name='AAA'与='aaa'没区别,以下是测试的例子


(root@localhost)[hello]> create table test1(id int, name varchar(10));
(root@localhost)[hello]> insert into test1 values(1,'aaa'),(2,'AAA'),(3,'bbb'),(4,'BbB');
(root@localhost)[hello]> select * from test1;
+------+------+
| id | name |
+------+------+
| 1 | aaa |
| 2 | AAA |
| 3 | bbb |
| 4 | BbB |
+------+------+

(root@localhost)[hello]> select * from test1 where name = 'AAA';
+------+------+
| id | name |
+------+------+
| 1 | aaa |
| 2 | AAA |
+------+------+

(root@localhost)[hello]> select * from test1 where name = 'aaa';
+------+------+
| id | name |
+------+------+
| 1 | aaa |
| 2 | AAA |
+------+------+

可以看到此时where条件后面的'AAA'与'aaa',查出来的结果没啥区别。

如果只想找出'AAA'的可以有以下几种办法
1.在sql中加入binary关键字


(root@localhost)[hello]> select * from test1 where binary name = 'AAA';
+------+------+
| id | name |
+------+------+
| 2 | AAA |
+------+------+

修改列的定义

先查看原始表的定义


(root@localhost)[hello]> show create table test1\G
*************************** 1. row ***************************
  Table: test1
Create Table: CREATE TABLE `test1` (
 `id` int(11) DEFAULT NULL,
 `name` varchar(10) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4

修改表test1的name列


alter table test1 modify column name varchar(10) character set utf8mb4 collate utf8mb4_bin default null;

collate utf8mb4_bin表示where过滤或者order by排序区分大小写

此时查看test1的定义


(root@localhost)[hello]> show create table test1\G
*************************** 1. row ***************************
  Table: test1
Create Table: CREATE TABLE `test1` (
 `id` int(11) DEFAULT NULL,
 `name` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4

接着再执行查询语句


(root@localhost)[hello]> select * from test1 where name='AAA';
+------+------+
| id | name |
+------+------+
| 2 | AAA |
+------+------+

下面再创建一张test2表,就会发现上面修改列的语句其实相当于在创建表时varchar后面跟binary


(root@localhost)[hello]> create table test2(id int, name varchar(10) binary);
(root@localhost)[hello]> show create table test2\G
*************************** 1. row ***************************
  Table: test2
Create Table: CREATE TABLE `test2` (
 `id` int(11) DEFAULT NULL,
 `name` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4

下面介绍如何设置字符大小写敏感

创建


create database <db_name> default character set utf8mb4 collate utf8mb4_bin;

修改


alter database <db_name> default character set utf8mb4 collate utf8mb4_bin;
  • 表级别设置字符大小写敏感

创建


create table <tb_name> (
......
) engine=innodb default charset=utf8mb4 collate=utf8mb4_bin;

修改


alter table <tb_name> engine=innodb default charset=utf8mb4 collate=utf8mb4_bin;
  • 列级别设置字符大小写敏感

创建


create table <tb_name> (
`field1` varchar(10) character set utf8mb4 collate utf8mb4_bin,
......
)

修改


alter table <tb_name> modify column `field1` varchar(10) character set utf8mb4 collate utf8mb4_bin default null;

继承关系是列-->表-->库,优先级是列>表>库

以上就是mysql 字符类型大小写敏感的详细内容,更多关于MySQL 字符类型大小写的资料请关注自学编程网其它相关文章!

您可能感兴趣的文档:

--结束END--

本文标题: MySQL 字符类型大小写敏感

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

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

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

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

下载Word文档
猜你喜欢
  • MySQL 字符类型大小写敏感
    mysql字符类型默认是不区分大小写的,即select * from t where name='AAA'与='aaa'没区别,以下是测试的例子 (root@localhost)[hello]...
    99+
    2022-05-15
    MySQL 大小写 MySQL 大小写敏感
  • mysql 大小写敏感 lower_case_table_names
     在MySQL中,数据库对应数据目录中的目录。数据库中的每个表至少对应数据库目录中的一个文件(也可能是多个,取决于存储引擎)。因此,所使用操作系统的大小写敏感性决定了数据库名和表名的大小写敏感性。...
    99+
    2022-10-18
  • mysql 大小写敏感问题
    mysql关于大小写敏感的话题有以下三个: ...
    99+
    2022-10-18
  • mysql大小写敏感设置
    一.mysql大小写敏感设置 停止MySQL服务器 [root@localhost ~]# systemctl stop mysqld 修改mysql配置,添加lower_case_table_nam...
    99+
    2023-09-07
    mysql 服务器 数据库
  • MySQL到底大小写敏感还是不敏感?
    目录 一、MySQL是大小写敏感的吗 二、MySQL的大小写敏感是由参数控制的 三、MySQL大小写敏感如何设置 四、开发注意事项 五、总结 一、MySQL是大小写敏感的吗 在工作中,大家可能遇到过在本机开发的程序运行一切正常,发布到服...
    99+
    2023-09-09
    mysql 数据库 sql
  • MySQL第六课 主键为字符串大小写不敏感
    创建表过程中,指定字段为varchar类型,并且指定为主键,如果已有一条记录为aaaa, 如果这个时候向数据库插入一条AAAA记录,将会提示:1062 - Duplicate entry 'AAAA' fo...
    99+
    2022-10-18
  • MySQL大小写敏感问题分析
    这篇文章主要介绍“MySQL大小写敏感问题分析”,在日常操作中,相信很多人在MySQL大小写敏感问题分析问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”MySQL大小写敏感问题...
    99+
    2022-10-19
  • php字符串如何进行大小写不敏感比较
    这篇文章主要讲解了“php字符串如何进行大小写不敏感比较”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“php字符串如何进行大小写不敏感比较”吧!方法:1、用“strcasecmp(strin...
    99+
    2023-06-20
  • MySQL大小写敏感的注意事项
    目录MySQL的大小写敏感是由参数控制的MySQL大小写敏感如何设置开发注意事项总结由于这个原因,在阿里巴巴规约中这样要求: 【强制】表名、字段名必须使用小写字母或数字 , 禁止出现数字开头,禁止两个下划线中间只 ...
    99+
    2022-05-19
    MySQL 大小写 MySQL 大小写敏感
  • mysql怎么设置大小写不敏感
    这篇文章将为大家详细讲解有关mysql怎么设置大小写不敏感,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。mysql设置大小写不敏感的方法:1、打开并编辑“m...
    99+
    2022-10-19
  • MySQL中大小写敏感设置方法
    本文主要给大家简单讲讲MySQL中大小写敏感设置方法,相关专业术语大家可以上网查查或者找一些相关书籍补充一下,这里就不涉猎了,我们就直奔主题吧,希望MySQL中大小写敏感设置方法这篇文章可以给大家带来一些实...
    99+
    2022-10-18
  • mysql 大小写敏感的配置方法
    在MySQL中,大小写敏感性的配置主要涉及两个参数:lower_case_table_names和collation_server。下面是每个参数的详细说明及配置方法: lower_case_tab...
    99+
    2023-09-07
    mysql 数据库
  • mysql如何修改为大小写不敏感?
    我们有时会面临需要对mysql数据库设置为大小写不敏感,比较常见的例如:在Linux下,MySQL的表名区分大小写,而在Windows下是不区分,有时候在Linux上查询大写表名时就会出现找不到表的情...
    99+
    2023-09-01
    mysql 数据库 linux
  • mysql中如何设置大小写不敏感
    目录mysql设置大小写不敏感原理与参数修改前准备正式设置 mysql大小写不敏感,设置不生效的解决解决思路总结mysql设置大小写不敏感 原理与参数 mysql大小写敏感配置与两个参数相关 —&m...
    99+
    2023-04-12
    mysql设置大小写 大小写不敏感 mysql大小写不敏感
  • mysql中怎么设置大小写不敏感
    这篇文章主要介绍了mysql中怎么设置大小写不敏感的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇mysql中怎么设置大小写不敏感文章都会有所收获,下面我们一起来看看吧。mysql设置大小写不敏感原理与参数mys...
    99+
    2023-07-06
  • centos下mysql中table大小写改为不敏感
    项目由win系统部署到linux系统下,启动项目报错如下: Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Table 'jeecg-bo...
    99+
    2021-01-12
    centos下mysql中table大小写改为不敏感
  • 如何解决MySQL大小写敏感导致的问题
    小编给大家分享一下如何解决MySQL大小写敏感导致的问题,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!MYSQL对大小写敏感见字...
    99+
    2022-10-18
  • MySQL字符型数据区分大小写吗
    本篇内容介绍了“MySQL字符型数据区分大小写吗”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!MySQL字...
    99+
    2022-10-18
  • 如何解决MySQL数据库大小写敏感的问题
    小编给大家分享一下如何解决MySQL数据库大小写敏感的问题,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!在MySQL中,数据库对...
    99+
    2022-10-18
  • MYSQL的binary解决mysql数据大小写敏感问题的方法
    复制代码 代码如下:mysql> select binary 'ABCD'='abcd' COM1, 'ABCD'='abcd' COM2;+--------+---...
    99+
    2022-11-15
    MYSQL binary 大小写敏感
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作