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

关于MySQL库表小写问题

前言: 一般数据库使用规范中,我们都会看到这么一条:库及表一律使用小写英文。你有没有思考过,为什么推荐使用小写呢?库表是否应该区分大小写呢?带着这些疑问,我们一起来看下本篇文章。...除此之外,MySQL 还提供了 lower_case_table_names 系统变量,该参数会影响表和数据库名称在磁盘上的存储方式以及在 MySQL 中的使用方式,在 Linux 系统,该参数默认为...MySQL 在存储和查找时将所有表转换为小写。此行为也适用于数据库名称和表别名。 2 库表以创建语句中指定的字母大小写存储在磁盘上,但是 MySQL 在查找时将它们转换为小写。...这样会更易用些,程序里无论使用大写表还是小写都可以查到这张表,而且不同系统间数据库迁移也更方便,这也是建议将 lower_case_table_names 参数设为 1 的原因。...库表大小写问题,相信你看了这篇文章后,应该明白为什么库表建议使用小写英文了。

7.2K32
您找到你想要的搜索结果了吗?
是的
没有找到

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

在linux环境下表是区分大小写的 问题 执行SHOW VARIABLES LIKE '%lowercasetable_names%' 输出结果: ?...其中 0:区分大小写,1:不区分大小写 解决办法 在mysql的配置文件中添加 lowercasetable_names=1 实际解决方式 先查找mysql使用的配置文件 添加配置 重启mysql 查看是否生效...正常情况使用locate my.cnf命令可以列出所有的my.cnf文件 ps命令查看是否使用了指定目录的my.cnf 没有找到 [root@iZbts0ohz0hZ ~]# ps aux|grep...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.3K20

mysql忽略大小写问题记录

这样设置后,表在硬盘上以小写保存,MySQL将所有表转换为小写存储和查找表上。该行为也适合数据库和表的别名。...也就是说,mysql设置为不分区大小写后,创建库或表时,不管创建时使用大写字母,创建成功后,都是强制以小写保存!...3)登陆mysql数据库,"alter table 旧表 rename 新表" 将带大写字母的旧表改为小写 4)最后再启动mysql即可!...下数据库、表、列名、别名大小写规则是这样的: 1)数据库与表是严格区分大小写的; 2)表的别名是严格区分大小写的; 3)列名与列的别名在所有的情况下均是忽略大小写的; 4)变量也是严格区分大小写的...;      b)使用alter修改 所以在不同操作系统中为了能使程序和数据库都能正常运行,最好的办法是在设计表的时候都转为小写!!

6.5K70

设置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下都不区分大小写

16K21

三种方式修改 MySQL 数据库

在 Innodb 数据库引擎下修改数据库的方式与 MyISAM 引擎下修改数据库的方式完全不一样,如果是 MyISAM 可以直接去数据库目录中 mv 就可以,Innodb 如果用同样的方法修改会提示相关表不存在...mysqldum 导出要改名的数据库 删除原来的旧库 这种方法是安全的,但是如果数据量大,会很耗时 第三种方法(推荐): 使用 shell 脚本创建新数据库,并快速将旧库的表变更到新库 #!.../bin/bash # 假设将 sakila 数据库改为 new_sakila mysql -uroot -p123456 -e 'create database if not exists new_sakila...='sakila'") for table in $list_table do mysql -uroot -p123456 -e "rename table sakila....$table" done 这里用到了 rename table 更改表的命令,但是如果新表后面加数据库,将会将原来的数据库的表移动到新的数据库,所有这种方法既安全又快速,推荐!

8.6K10

MySQLMySQL数据库的初阶使用

第二层是SQL语句的接口SQL interface,sql语句的解析器parser,以及sql语句的优化optimizer,因为MySQL的sql语句的标准格式是全大写的,而我们敲的sql语句一般小写的...下面对比了utf8_general_ci和utf8_bin校验规则不同时,数据库查询时所造成的查询结果的不同,其实就是区不区分大小写,默认数据库是不区分大小写的,也就是utf8_general_ci校验规则...数据库的重命名MySQL是不支持的,并且这是非常合理的,因为数据库的名字是量级很重的,一旦数据库的名字发生改变,则上层所有使用数据库的代码都需要做出调整,代价特别大,所以一般在项目前期讨论协商的时候,一定要确定好数据库的命名等工作...除非万不得已,必须要对数据库重新命名的时候,一般会采用备份与恢复的方式来进行重命名,备份的指令:mysqldump -P3306 -u root -p 密码 -B 数据库 > 数据库备份存储的文件路径...-u root -p -B 数据库1 数据库2 … > 数据库存放路径。

32330

MySQLMySQL数据库的进阶使用

除此之外,实际公司使用MySQL数据库,存储的数据最少也几百万条记录打底,一旦全列查询,则查询结果会疯狂刷屏到显示器上,看也没法看,而且还有可能导致mysqld服务卡死,所以平常我们自己敲一些简单的数据库...MySQL中判断是否相等一般用=,还有一个比较鸡肋的东西就是,=是NULL不安全的,是NULL安全的,其实这里的安全不安全指的就是NULL在作为判断条件时候的判断结果,一般判断是否等于null...删除孙悟空同学的考试成绩 删除总成绩倒数第一的同学 limit配合order by子句便可筛选出倒数第一的同学 4.2 truncate和delete from的区别 面试官灵魂一问: MySQL...一般来说group by通常配合聚合函数来使用,以便进行分组聚合统计。 下面是oracle 9i的经典测试表。...显示部门号为10的部门,员工和工资 显示各个员工的姓名,工资,及工资级别 显示员工FORD的上级领导的编号和姓名(mgr是员工领导的编号–empno) 像上面这样的需求,其实就需要自连接,可以使用多表查询的方式

28520

Mysql-使用sqldbx连接Mysql数据库

浏览量 2 假设你已经在服务器上安装好了MySQL数据库了,这里以腾讯云服务器进行远程连接的操作。 下载sqldbx,这里可以去官方网站进行下载,个人可以免费使用。...打开服务器上的数据库端口,MySQL默认端口为3306。...下载完成之后,启动连接,输入对应的参数,提示odbc驱动相关错误,这里需要去下载mysql odbc的驱动程序进行安装,下载地址: https://dev.mysql.com/downloads/connector.../odbc/ 下载安装成功之后,我们这里使用root账户进行远程连接,发现提示拒绝连接的错误,此时,我们需要登录到服务器对root账户进行授权处理,让它能够进行远程登录,使用mysql -uroot -...p登录到数据库,然后执行下面的语句。

3.7K30

数据库使用中一定掉过的坑:大小写敏感

数据库小写问题可以说让很多用数据库的人感受是:建表时,哇建出来了;使用时,我去,怎么找不到表,怎么找不到字段。没事,这是小场面。...先说为什么是坑及解决办法 说是坑的原因是:数据库在大小写敏感的配置下创建,如果修改为大小写不敏感后,原来创建的区分大小写的表就不能访问。...如何避免:所有的库,表,字段名使用小写,单词用下划线"_"间隔,所有命名中,不允许使用 反引号,双引号包裹,ODS 层遇到特别骚的,需要提审批。这个规则保你在数据库使用达到 95% 以上的幸福。...到这里 MySQL 不跟了, MySQL 在字段上不区分大小写MySQL 字段命名也可以用反引号包裹,但这块规则和表不一致。...【强制】对象名(表、列名、函数名、视图名、序列名、等对象名称)规范,对象名务必只使用小写字母,下划线,数字。不要以数字开头,不要使用保留字。

46620
领券