MySQL
文章平均质量分 58
liuhmmjj
对计算机编程很有兴趣
展开
-
MySQL update set 语句中,与 and的区别
这是因为MySQL 在语法上,并不认为 and 这个用法是错误的,那么说明 MySQL 用另外的方式“解读”了这个语句。最容易想到的,就是 MySQL 是不是在 set 的时候,把 and 解释成了逻辑运算符,而不是英文意义上的“和”?(70 and non_standard_duration = 5)中的70不为0所以为true,non_standard_duration=5和表中的值是相等的,所以也为true,所以整个表达式的值为true,因此最终standard_duration的值为1(true)原创 2023-05-05 11:18:05 · 533 阅读 · 1 评论 -
MySql 连接查询中 on 和 where 的区别
大家可以先看MySQL:left join 避坑指南看过之后再接着看下面在多表查询时,ON和where都表示筛选条件,on先执行,where后执行。 on 后跟连接条件,然后再加的筛选条件只针对关联表(从表) 执行顺序:从表按照条件筛选,然后再进行连接;即先筛选再连接 where 则针对连接后产生的临时表进行筛选 执行顺序:先连接再筛选 区别:外连接时,on条件是在生成临时表时使用的条件,它不管on中的条件是否为真,都会返回左边表中的记录。而where条件是在临时表生.原创 2022-01-21 16:52:44 · 4496 阅读 · 1 评论 -
MySQL redo和binlog
redo log用来保证事务的持久性redo概念可以参考:MySQL · 引擎特性 · InnoDB redo log漫游mysql是如何保证一致性的呢?最简单的做法是在每次事务提交的时候,将该事务涉及修改的数据页全部刷新到磁盘中。但是这么做会有严重的性能问题,主要体现在两个方面:因为Innodb是以页为单位进行磁盘交互的,而一个事务很可能只修改一个数据页里面的几个字节,这个时候将完整的数据页刷到磁盘的话,太浪费资源了! 一个事务可能涉及修改多个数据页,并且这些数据页在物理上并不...原创 2021-12-31 11:09:11 · 1254 阅读 · 1 评论 -
从数据库中分批取数据进行处理
思路1:用分页查询的方式取先查询出要处理的总数据量 count,然后假设每批要处理100条,代码 //获取可push的记录进行发送消息 private void getData(){ //查出总数据量 long count = xxxMapper.countByExample(example); int pageSize = 100; long pageNum = count / pageSize; l原创 2021-05-20 20:15:23 · 1877 阅读 · 0 评论 -
mysql的聚簇索引与非聚簇索引
在mysql数据库中,myisam引擎和innodb引擎使用的索引类型不同,myisam对应的是非聚簇索引,而innodb对应的是聚簇索引。聚簇索引所谓聚簇索引,就是指主索引文件和数据文件为同一份文件,聚簇索引主要用在Innodb存储引擎中。在该索引实现方式中B+Tree的叶子节点上的data就是数据本身,key为主键,如果是一般索引的话,data便会指向对应的主索引。innodb中,没有主见索引,则会使用unique索引,没有unique索引,则会使用数据库内部的一个行的id来当作主键索引。原创 2020-05-28 16:26:06 · 2613 阅读 · 1 评论 -
MySQL 添加索引、唯一约束以及修改字段
添加索引1.添加PRIMARY KEY(主键索引)mysql>ALTER TABLE `table_name` ADD PRIMARY KEY ( `column` )2.添加UNIQUE(唯一索引)mysql>ALTER TABLE `table_name` ADD UNIQUE (`column`)3.添加INDEX(普通索引)mysql>ALT...原创 2019-11-02 15:56:31 · 17551 阅读 · 1 评论 -
centos安装MySQL出现问题与解决
我是直接运行命令:yum install mysql然后 执行 mysql -uroot -p报错:ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)执行命令:service mysqld start报错:Redirect...原创 2019-05-22 15:53:12 · 6028 阅读 · 0 评论 -
win10系统 64位安装mysql-5.7.25,图文
步骤一:进入网址https://dev.mysql.com/downloads/mysql/5.7.html#downloads进行下载二、下载后解压到指定目录,笔者解压在D:\soft\mysql-5.7.25-winx64三、设置环境变量了(这个不会网上查查),把D:\soft\mysql-5.7.25-winx64\bin 放到path中,注意目录是到\bin四、在D:\...原创 2019-03-06 17:32:49 · 6928 阅读 · 0 评论 -
SQL语句的优化
1、尽量避免select * 的存在,使用具体的列代替*,避免多余的列。2、避免在select f1,(select f2 from tableB ).... from tableA 这样得到字段列。直接用tableA和tableB关联得到A.f1,B.f2就可以了。3、当只要一行数据时使用 LIMIT 1。4、应尽量避免在 where 子句中对字段进行 null 值判断,如: ...原创 2018-07-05 19:24:53 · 4077 阅读 · 0 评论 -
mysql导入数据load data infile用法(将txt文件中的数据导入表中)
我们常常导入数据!mysql有一个高效导入方法,那就是load data infile 下面来看案例说明 基本语法:load data [low_priority] [local] infile 'file_name txt' [replace | ignore]into table tbl_name[fields[terminated by't'][OPTI原创 2016-11-15 17:52:49 · 32615 阅读 · 2 评论 -
Windows下MySQL 5.6.27.0.安装及配置
一、安装前的准备MySQL下载地址 选择对应的Windows版本下载点击Download跳转到下载页面,选择跳过注册开始下载MySQL Installer 5.6.27二、安装1、双击下载的安装文件,本篇安装的MySQL版本为5.6.27,选择接受(I acceptthe license terms)转载 2015-11-24 16:04:36 · 5790 阅读 · 1 评论 -
SQL注入原理
原文地址:http://www.cnblogs.com/rush/archive/2011/12/31/2309203.html1.1.1 摘要日前,国内最大的程序员社区CSDN网站的用户数据库被黑客公开发布,600万用户的登录名及密码被公开泄露,随后又有多家网站的用户密码被流传于网络,连日来引发众多网民对自己账号、密码等互联网信息被盗取的普遍担忧。网络安全成为了现在互联网转载 2015-11-24 15:58:24 · 512 阅读 · 0 评论