• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • MsSql
  • Mysql
  • oracle
  • MariaDB
  • DB2
  • SQLite
  • PostgreSQL
  • MongoDB
  • Redis
  • Access
  • 数据库其它
  • sybase
  • HBase
您的位置:首页 > 数据库 >Mysql > MySQL常常被我们误会的地方

MySQL常常被我们误会的地方

作者:匿名 字体:[增加 减小] 来源:互联网 时间:2018-12-05

匿名通过本文主要向大家介绍了MySQL等相关知识,希望本文的分享对您有所帮助



MySQL作为数据库的一大主力军,到处存在于我们各种系统中,相信大家都不陌生!但是,你知道你能用不代表你知道细节,那我们就来盘点盘点其中一些我们平时不太注意的地方,一来为了有趣,二来为了不让自己踩坑。

声明:要想知道细节,那就去阅读源码,我实在没那本事,只能从片面上来说一些事!

1、不区分大小写(字段名)

MySQL的查询字段名不区分大小写,但是查询的内容是要区分大小写的,所以能用下划线命名的就不要用大小写来区分命名了,如:

  1. SELECT uid,v_state FROM all_user WHERE username = 'sunyue';

  2. SELECT uid,v_state FROM all_user WHERE USERNAME = 'sunyue'; //与上一个语句结果一样,字段不区分大小写


  3. SELECT uid,v_state FROM all_user WHERE USERname = 'SUNYUE'; //查不到信息,内容要区分大小写

复制代码

2、模糊匹配([_]匹配任意字符)

虽说模糊匹配有点正则的意思,但是你并不能像正则一样自由地在数据库里进行匹配,做到尽量简化匹配就好!(附名词:全文检索sphinx)

  1. SELECT uid,v_state FROM all_user WHERE USERNAME LIKE 'su_yue'; //下划线[_]匹配任意单个字符

  2. SELECT uid,v_state FROM all_user WHERE USERNAME LIKE 'su%yue'; //%匹配任意多个字符

  3. SELECT uid,v_state FROM all_user WHERE USERNAME NOT LIKE 'su%'; /t like取不包含的信息

复制代码

3、怎样猜测一个功能

mysql作为一个关系型数据库,面向的是普通的开发者,所以一切尽可能做到人性化。所以,如果你不知道某个功能是什么,那么,也许你可以猜得出来,因为,如果一个功能让别人无法猜出个大概,那么也许,他就是失败的设计。对于mysql,只要你英语水平稍微好一点点,就能很轻松的想到关系查询应该怎么写。所以,猜测的能力,在于你英语的水平,哈哈哈!!!

4、replace into 语法

replace into 是一个很粗暴的插入方式,不过在适当的场景使用也是很有必要的,比如一些需要随时覆盖式写入的数据,就应该使用replace, 但是对于一些自增型的表,则应尽量避免使用,因为这样会是对ID的一种浪费,也许没必要使用replace.

5、insert into on dumplicate key update 语法

这个写法相对来说就温柔多了,但是速度肯定是慢一点的,据说只有mysql才有这个特性哦,如果你不想在插入前去判断一下是否已存在该数据,也许这是一个不错的选择!

6、explain 语法

这是一个检查查询效果的有效方式,其实我本人很少使用这功能,但是,如果一个开发者经常使用这功能,那么,我相信,他本人肯定是个牛掰的人。通过这个命令,可以判断出你写的语句是否是优化的,如果不是,方向是什么。应该说,你用得多了,自己自然就知道结果了,还是多用用吧!

7、索引长度

myisam的索引长度最大为1000字节,innodb的索引长度最大为767字节!注意使用哦,超出范围,则超出预料!

8、库的复制

1)直接数据mysql自带的数据库备份恢复命令;

2)直接拷贝文件到目的服务器(注意进程占用问题);

3)使用工具进行同步;个人感觉第二种方式最简单!

9、分区

对于一些可能会很大的表,需要进行分区操作,如果有这方面的需求,需要在最开始就

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

相关文章

  • 2018-12-05mysql中迅速插入百万条测试数据的方法
  • 2018-12-05MySql中关于正则表达式查询的使用方法介绍
  • 2018-12-05MySQL优化—查看字段长度的代码实例
  • 2018-12-05mysql存储引擎和数据类型(二)_MySQL
  • 2018-12-05SQLServer 数据库开发顶级技巧
  • 2018-12-05sql数据表的可视化增删改教程(phpMyAdmin使用教程)
  • 2018-12-05MongoDB插入查询数据
  • 2017-05-11CMS不要让MySQL为你流泪
  • 2018-12-05MySQL存储过程-->通过游标遍历和异常处理迁移数据到历史表
  • 2018-12-05MySQL远程连接如何在阿里云下配置?

文章分类

  • MsSql
  • Mysql
  • oracle
  • MariaDB
  • DB2
  • SQLite
  • PostgreSQL
  • MongoDB
  • Redis
  • Access
  • 数据库其它
  • sybase
  • HBase

最近更新的内容

    • 关于日志系统的详细介绍
    • Oracle数据库性能优化技术开发者网络Oracle
    • mysql的中文数据按拼音排序的2个方法
    • Sql语句与存储过程查询数据的性能测试实现代码
    • Mac环境mysql5.7.21 utf8编码问题下详解
    • sqlserver 临时表的用法
    • 网站前端和后台性能优化的34条宝贵经验和方法
    • 5个让DBA爱上你的SQL技巧
    • 分享Mysql免安装版设置密码的3种方法
    • PHP程序员经常碰到的11个MySQL错误

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有