首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

mysql数据库名大小写

MySQL数据库名大小写指的是在MySQL中创建数据库时,是否区分大小写。MySQL默认是不区分数据库名的大小写的,即数据库名是不区分大小写的。

然而,MySQL在不同的操作系统中对于数据库名大小写的处理有所不同。在Windows操作系统下,MySQL默认是不区分数据库名的大小写的,无论是在创建数据库还是在查询数据库时,大小写都会被忽略。而在Unix/Linux操作系统下,MySQL默认是区分数据库名大小写的,也就是说在创建数据库时,大小写会被区分。

对于MySQL的数据库名大小写,需要注意以下几点:

  1. 创建数据库:在创建数据库时,如果指定的数据库名与现有数据库名在大小写上有差异,Windows操作系统下会提示"Database already exists"错误,而Unix/Linux操作系统下会创建一个新的数据库。
  2. 查询数据库:在查询数据库时,无论是在Windows还是在Unix/Linux操作系统下,都可以使用不同的大小写组合来查询相同的数据库,结果都是一样的。
  3. 表名和字段名:与数据库名不同,MySQL对于表名和字段名是区分大小写的。在创建表时,如果指定的表名和字段名在大小写上有差异,无论在哪个操作系统下,都会按照指定的大小写创建表和字段。

总结起来,MySQL数据库名大小写在不同操作系统下的处理方式不同。在Windows操作系统下,不区分大小写;在Unix/Linux操作系统下,区分大小写。因此,在实际开发中,为了避免因为操作系统的不同而导致的问题,最好统一使用小写的数据库名、表名和字段名。

腾讯云提供的MySQL云数据库产品是一种高可用、高性能、全面兼容的关系型数据库服务。您可以通过腾讯云的MySQL云数据库产品来轻松部署、管理和扩展您的MySQL数据库。详细信息请参考腾讯云的MySQL云数据库产品介绍:https://cloud.tencent.com/product/cdb

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

关于MySQL库表大小写问题

前言: 一般在数据库使用规范中,我们都会看到这么一条:库及表一律使用小写英文。你有没有思考过,为什么推荐使用小写呢?库表是否应该区分大小写呢?带着这些疑问,我们一起来看下本篇文章。...1.决定大小写是否敏感的参数 在 MySQL 中,数据库与 data 目录中的目录相对应。数据库中的每个表都对应于数据库目录中的至少一个文件(可能是多个文件,具体取决于存储引擎)。...默认情况下,库表在 Windows 系统下是不区分大小写的,而在 Linux 系统下是区分大小写的。列名,索引,存储过程、函数及事件名称在任何操作系统下都不区分大小写,列别名也不区分大小写。...MySQL 在存储和查找时将所有表转换为小写。此行为也适用于数据库名称和表别名。 2 库表以创建语句中指定的字母大小写存储在磁盘上,但是 MySQL 在查找时将它们转换为小写。...通过以上实验我们发现 lower_case_table_names 参数设为 0 时,MySQL 库表是严格区分大小写的,而且表别名同样区分大小写但列名不区分大小写,查询时也需要严格按照大小写来书写

7.4K32

mysql linux环境下表区分大小写问题

在linux环境下表是区分大小写的 问题 执行SHOW VARIABLES LIKE '%lowercasetable_names%' 输出结果: ?...其中 0:区分大小写,1:不区分大小写 解决办法 在mysql的配置文件中添加 lowercasetable_names=1 实际解决方式 先查找mysql使用的配置文件 添加配置 重启mysql 查看是否生效...order of preference, my.cnf, $MYSQL_TCP_PORT, /etc/my.cnf /etc/mysql/my.cnf /usr/local/mysql/etc/my.cnf...datadir=/work1/soft/mysql/data socket=/work1/soft/mysql/mysql.sock #设置忽略大小写(简单来说就是sql语句是否严格),默认库名表保存为小写..., 不区分大小写 lower_case_table_names=1 # 开启ip绑定 #bind-address = 0.0.0.0 [mysqld_safe] log-error=/var/log/mysqld.log

2.4K20
  • mysql忽略大小写问题记录

    原因查找: 因为linux下mysql默认是要区分表大小写的。...这样设置后,表在硬盘上以小写保存,MySQL将所有表转换为小写存储和查找表上。该行为也适合数据库和表的别名。...3)登陆mysql数据库,"alter table 旧表 rename 新表" 将带大写字母的旧表改为小写表 4)最后再启动mysql即可!...下数据库、表、列名、别名大小写规则是这样的: 1)数据库与表是严格区分大小写的; 2)表的别名是严格区分大小写的; 3)列名与列的别名在所有的情况下均是忽略大小写的; 4)变量也是严格区分大小写的...修改mysql为不区分大小写设置: [root@test-huanqiu ~]# mysqladmin -uroot -p shutdown //以安全模式关闭数据库 [root@test-huanqiu

    6.6K70

    设置MySQL数据库不区分大小写

    我们大家可能都碰到过这种情况:在Linux下,MySQL的表区分大小写,而在Windows下是不区分,从Windows下导出的数据脚本中使用的是小写,而Hibernate生成的SQL中表是大写的,所以查不出数据...这个时候怎么办呢,显然改程序是不行的,时间上也不允许,所以只能设置MySQL数据库不区分大小写了,大家看以下步骤: 1、查询MySQL是否设置了区分大小写 show variables like "%case...其中lower_case_table_names代表了:0是区分大小写; 1是不区分大小写。显然我这个MySQL是区分大小写的。...拓展知识 MySQL在Linux下数据库、表、列名、别名大小写规则是这样的: 1、数据库与表是严格区分大小写的; 2、表的别名是严格区分大小写的; 3、列名与列的别名在所有的情况下均是忽略大小写的...; 4、变量也是严格区分大小写的; MySQL在Windows下都不区分大小写

    16.2K21

    MySQL大小写敏感总结

    MySQL中,数据库、表、triggers实际上都对应了datadir目录(或子目录)下的文件,因此,这些对象的名字是否大小写敏感主要是依赖于操作系统和文件系统的,因此这些内容在Windows中是大小写是不敏感的...、table(包括别名)的大小写敏感性可以通过系统参数lower_case_table_names来配置(修改参数的值需要重启数据库); lower_case_table_names =0(Unix default...=1(Windows default):大小写不敏感,MySQL将数据全部转化为小写形式存储在磁盘上,而且在查询的时候也是全部转化为小写进行比较; lower_case_table_names =2(...,“_cs”代表case-sensitive大小写敏感,“_bin”的大小写敏感依赖于character的二进制编码; collation可以在数据库对象(server、database、table、column...MYSQL轻松学

    3.5K40

    三种方式修改 MySQL 数据库

    在 Innodb 数据库引擎下修改数据库的方式与 MyISAM 引擎下修改数据库的方式完全不一样,如果是 MyISAM 可以直接去数据库目录中 mv 就可以,Innodb 如果用同样的方法修改会提示相关表不存在.../bin/bash # 假设将 sakila 数据库改为 new_sakila mysql -uroot -p123456 -e 'create database if not exists new_sakila...' list_table=$(mysql -uroot -p123456 -Nse "select table_name from information_schema.TABLES where TABLE_SCHEMA...='sakila'") for table in $list_table do mysql -uroot -p123456 -e "rename table sakila....$table" done 这里用到了 rename table 更改表的命令,但是如果新表后面加数据库,将会将原来的数据库的表移动到新的数据库,所有这种方法既安全又快速,推荐!

    8.9K10

    mysql大小写踩坑

    翻译过来大致 按大小写敏感存储表 按小写形式存储表 比较时不区分大小写大小写敏感存储表 以小写字母进行比较 他们的默认值在不同系统下面有区分 MacOS2 Unix0 Windows1 然后注意...mysql # 重启mysql,请确认路径 /etc/init.d/mysql restart 修改后可以用这三个sql查询是否生效 select @@lower_case_table_names;...中的表是按照大写表去查,而我们此处配置的,并不是查询时忽略表大小写,而是全部以小写表去查询 因此配置了lower_case_table_names = 1后,大写表用大写sql一律作废匹配不到...翻译过来就是说Linux或者其他类似Unix的系统,不支持设置为2[1],mysql服务端会强制使用0代替 那么这么多表,一个一个改不是很麻烦?...这里我们可以使用mysql数据库信息函数去按规则[2]查询出表转换为小写,再拼接成多条sql 或者使用存储过程、代码处理等方式 这里我使用以下sql: SELECT CONCAT( 'ALTER TABLE

    1.5K20

    Oracle数据库、实例、ORACLE_SID、数据库域名、全局数据库、服务详解

    Oracle数据库、实例、ORACLE_SID、数据库域名、全局数据库、服务详解 数据库、实例数据库域名、全局数据库、服务 , 这是几个令很多初学者容易混淆的概念。...一、数据库 什么是数据库数据库就是一个数据库的标识,就像人的身份证号一样。他用参数DB_NAME表示,如果一台机器上装了多全数据库,那么每一个数据库都有一个数据库。...修改数据库 前面建议:应在创建数据库时就确定好数据库数据库不应作修改,因为修改数据库是一件比较复杂的事情。那么现在就来说明一下,如何在已创建数据之后,修改数据库。...全局数据库 全局数据库=数据库+数据库域名,如前述福建节点的全局数据库是:oradb.fj.jtyz 四、数据库服务 什么是数据库服务?...从oracle9i版本开始,引入了一个新的参数,即数据库服务。参数名是SERVICE_NAME。 如果数据库有域名,则数据库服务就是全局数据库;否则,数据库服务数据库名相同。

    7.9K10

    MySQL中的大小写敏感

    今天同事问了一个问题,是关于MySQL大小写敏感的。 如果根据关键字case来搜索,会发现有两个参数。...大小写的敏感问题,在MySQL大体会分为两种类别,在Linux和Windows平台。...MySQL在Linux下数据库、表、列名、别名大小写规则是这样的:    1、数据库与表是严格区分大小写的;    2、表的别名是严格区分大小写的;    3、列名与列的别名在所有的情况下均是忽略大小写的...;    4、变量也是严格区分大小写的; 而Windows下的MySQL却是大小写不敏感的,所有表数据库都会变成小写。...mysql> select id,name from TEST_TAB; ERROR 1146 (42S02): Table 'test.TEST_TAB' doesn't exist 而在列级别,MySQL

    2.5K60

    细说MySQL区分字母大小写

    在Linux系统上使用MySQLMySQL是区分字母大小写的,例如建A表时表是大写的A,修改A表时脚本里写的a,就会报错表a不存在。...在MySQL中,数据库对应数据目录中的目录,数据库中的每个表至少对应数据库目录中的一个文件或多个文件,所以,是否区分大小写是其所在的操作系统决定的。...在大多数基于Unix的系统中,MySQL是区分大小写的;而在Windows系统中,MySQL是不区分大小写的。...0表示使用指定的大小写字母在硬盘上保存表数据库,并且区分字母大小写;1表示表在硬盘上以小写保存,MySQL将所有表转换为小写在存储和查找表上,不区分字母大小写;2表示表数据库在硬盘上使用指定的大小写字母进行保存...,但MySQL将它们转换为小写在查找表上,不区分字母大小写

    2.6K50
    领券