数据库的大小写不敏感怎么处理?

    作者:程序员Share更新于: 2019-09-28 15:57:50

    MySQL数据库表大小写不敏感处理,看完之后,大部分程序员收藏了。严格来说,数据库是长期储存在计算机内、有组织的、可共享的数据集合。数据库中的数据指的是以一定的数据模型组织、描述和储存在一起、具有尽可能小的冗余度、较高的数据独立性和易扩展性的特点并可在一定范围内为多个用户共享。

    本文总结了Mysql数据库表大小写不敏感的处理,快来看看吧,大部分程序员收藏了!

    数据库的大小写不敏感怎么处理_数据库_数据分析_数据管理_课课家

    MySQL大小写敏感的控制

    mysql是通过lower_case_table_names参数来控制大小写敏感的

    1:参数含义

    lower_case_table_names: 此参数不可以动态修改,必须重启数据库

    lower_case_table_names = 1 表名存储在磁盘是小写的,但是比较的时候是不区分大小写

    lower_case_table_names=0 表名存储为给定的大小和比较是区分大小写的

    lower_case_table_names=2, 表名存储为给定的大小写但是比较的时候是小写的

    2 大小写区分规则

    Linux下:

    数据库名与表名是严格区分大小写的;

    表的别名是严格区分大小写的;

    列名与列的别名在所有的情况下均是忽略大小写的;

    变量名也是严格区分大小写的;

    Windows下:

    ​ 都不区分大小写

    Mac OS下(非UFS卷):

    ​ 都不区分大小写

    案列:

    数据库中存在edu_website_images表

    select * from edu_website_images

    通过大写查询报错不存在

    select * from EDU_WEBSITE_IMAGES

    如何处理?

    配置mysql配置文件

    vi /etc/my.cnf 加入一行lower_case_table_names = 1

    1. //重启mysqlservice mysql restart 

    然后

    1. show variables like '%lower%'; 

    有可能结果是上面的没改过来...

    我们把数据库导出,重新创建一下数据库结果就正确了

     

    这种数据集合具有如下特点:尽可能不重复,以最优方式为某个特定组织的多种应用服务,其数据结构独立于使用它的应用程序,对数据的增、删、改、查由统一软件进行管理和控制。从发展的历史看,数据库是数据管理的高级阶段,它是由文件管理系统发展起来的。

课课家教育

未登录