
MySQL
文章平均质量分 71
另一只羊
这个作者很懒,什么都没留下…
展开
-
重温索引优化
1. 索引失效1.1 普通索引场景一:SELECT * FROM user_info WHERE id + 1 = 2;索引的列如果是表达式的一部分或者是函数的参数,则失效。场景二:SELECT * FROM user_info WHERE name LIKE '%ook';like查询前面部分未输入,以%开头无法命中索引。可以使用覆盖索引(type=index)。场景三:S...原创 2020-04-22 22:57:04 · 302 阅读 · 0 评论 -
MySQL数据库之索引规约
唯一索引 【强制】业务上具有唯一特性的字段,即使是多个字段的组合,也必须建成唯一索引。 说明:不要以为唯一索引影响了 insert 速度,这个速度损耗可以忽略,但 高查找速度是明显的;另外,即使在应用层做了非常完善的校验控制,只要没有唯一索引,根据墨菲定律,必然有脏数据产生。多表关联查询 【强制】超过三个表禁止 join。需要 join 的字段,数据类型必须绝对一...转载 2018-03-17 15:51:51 · 476 阅读 · 0 评论 -
选择合适的数据类型
char 与 varcharchar是固定长度的字符串类型,varchar是可变长度的字符串类型。检索时会从char列删除尾部的空格。char是固定长度的,所以处理速度比varchar快。varchar会用多余的字节来保存字符串长度信息。对于那些长度变化不大并且对查询速度有较高要求的数据可以考虑使用char类型来存储。对于不同的存储引擎,使用规则也不同:MyISAM:ch...原创 2018-03-16 15:48:36 · 556 阅读 · 0 评论 -
表类型(存储引擎)的选择
1、查看默认的存储引擎:show engines \G;2、设置表的存储引擎: 创建表的时候设置存储引擎。3、修改存储引擎:mysql> alter table vc engine = myisam;各种存储引擎的特性MyISAM不支持事务和外键,优势是访问速度快,对事务完整性没有要求或者以select、insert为主的应用基本上都...原创 2018-03-16 15:03:23 · 729 阅读 · 0 评论 -
常用函数
字符串函数ASCII(char):返回字符的ASCII码值。BIT_LENGTH(str):返回字符串的比特长度。CONCAT(s1,s2…,sn):将s1,s2…,sn连接成字符串。任何字符串与NULL连接的结果都是NULL。CONCAT_WS(sep,s1,s2…,sn) 将s1,s2…,sn连接成字符串,并用sep字符间隔。INSERT(str,x,y,instr) ...原创 2018-03-15 22:12:46 · 181 阅读 · 0 评论 -
MySQL中的运算符
算术运算符比较运算符逻辑运算符位运算符算术运算符 进行除法和求余的运算时,如果第二个参数是0或者null,计算结果将是空值(NULL)。比较运算符 数字作为浮点数比较,而字符串以不区分大小写的方式进行比较。1.在运用“=”运算符判断两个字符是否相同时,数据库系统都是根据字符的ASCII码进行判断的。如果ASCII码相等,则表示这两个字符相同。如果ASCII...原创 2018-03-15 22:07:39 · 340 阅读 · 0 评论 -
MySQL支持的数据类型
数值类型1、整数类型所有的整数类型都有一个可选属性unsignedauto_increment:产生唯一标识或顺序值 在插入null到一个auto_increment列时,MySQL插入一个比该列中最大值大1的值。一个表最多只能有一个auto_increment列。任何一个auto_increment列应该定义为not null,并且定义为primary key或者定...原创 2018-03-14 21:47:15 · 509 阅读 · 0 评论 -
SQL基础
SQL:Structure Query Language,结构化查询语言。DDL语句:数据定义语言DML语句:数据操纵语言DCL语句:数据控制语言DDL语句对数据库内部的对象进行创建(create)、删除(drop)、修改(alter)等操作。 与DML语句最大的区别就是DML只是对表内部数据(记录)进行操作,而不涉及表的定义、结构的修改,更不会涉及其他对象。...原创 2018-03-14 20:29:04 · 226 阅读 · 0 评论 -
Linux下Mysql简单操作
一、连接MYSQL 格式: mysql -h主机地址 -u用户名 -p用户密码 1、例1:连接到本机上的MYSQL。 首先在打开终端窗口,如果刚安装好MYSQL,超级用户root是没有密码的,故直接回车即可进入到MYSQL中了,MYSQL的提示符是:mysql>注:此处的mysql超级用户root与系统的root用户不同!!!当然密码也不经相同!转载 2016-01-31 17:16:58 · 308 阅读 · 0 评论 -
数据库事务隔离级别
Read uncommitted 读未提交脏读:一个事务读到了另一个事务尚未提交的数据脏读就是指当一个事务正在访问数据,并且对数据进行了修改,而这种修改还没有提交到数据库中,这时,另外一个事务也访问这个数据,然后使用了这个数据。因为这个数据是还没有提交的数据,那么另外一个事务读到的这个数据是脏数据,依据脏数据所做的操作可能是不正确的。举例:公司发工资了,领导把5000元打到singo的账号上,但是该原创 2017-07-21 00:21:19 · 395 阅读 · 0 评论 -
数据库事务的四大特性
如果一个数据库声称支持事务的操作,那么该数据库必须要具备以下四个特性:原子性(Atomicity) 原子性是指事务包含的所有操作要么全部成功,要么全部失败回滚,因此事务的操作如果成功就必须要完全应用到数据库,如果操作失败则不能对数据库有任何影响。一致性(Consistency) 一致性是指事务必须使数据库从一个一致性状态变换到另一个一致性状态,也就是说一个事务执行之前和执行之后都必须处于一致性状原创 2017-07-21 00:54:12 · 489 阅读 · 0 评论 -
数据库设计三大范式
范式:英文名称是 Normal Form,它是英国人 E.F.Codd(关系数据库的老祖宗)在上个世纪70年代提出关系数据库模型后总结出来的,范式是关系数据库理论的基础,也是我们在设计数据库结构过程中所要遵循的规则和指导方法。目前有迹可寻的共有8种范式,依次是:1NF,2NF,3NF,BCNF,4NF,5NF,DKNF,6NF。通常所用到的只是前三个范式,即:第一范式(1NF),第二范式(2NF),原创 2017-07-20 23:37:49 · 509 阅读 · 0 评论