详解mysql数据库增删改操作
插入数据
insert into 表名(列名1,列名2,列名3) values(值1,值2,值3);
insert into user(user_id,name,age) values(1,'nice',24);
简单写法可以省去字段名,但是要插入全部字段。
批量插入
单条插入和批量插入的效率问题
mysql多条数据插入效率大于单条数据插入
删除记录
delete from 表名 [where 条件]
如果没有指定条件,会将表中数据一条一条全部删除掉。
delete删除数据和truncate删除数据有什么区别
delete:属于DML,一条一条删除表中的数据
truncate:属于DDL,先删除表再重建表
delete和truncate哪个删除数据效率高
如果数据比较少,delete比较高效
如果数据量比较多,truncate比较高效
更新记录
update 表名 set 列名=列的值,列名2=列2的值 [where条件]
修改多字段数据
全部修改(慎用)
以上所述是小编给大家介绍的mysql数据库增删改操作详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!
相关推荐
-
解决MySQl查询不区分大小写的方法讲解
问题 最近,在用SSH框架完成一个实践项目时,碰到了一个莫名其妙的Bug困扰了我好久,最后终于解决,记录如下. 问题:同学在测试系统的时候突然发现,数据库保存的账户本来应该是admin,结果该同学用Admin账户居然登录成功了-- --EXM???这样也行?好吧,我还是查找这个Bug发生的原因吧.然后就是各种排查程序的过程,找来找去也没发现什么问题.终于想到,不用hql,自己写sql语句在数据库里面直接查询试试,结果果然发现了问题所在: select * from user where user
-
MySQL字符集乱码及解决方案分享
前言 字符集是一套符号和编码的规则,不论是在oracle数据库还是在mysql数据库,都存在字符集的选择问题,而且如果在数据库创建阶段没有正确选择字符集,那么可能在后期需要更换字符集,而字符集的更换是代价比较高的操作,也存在一定的风险,所以,我们推荐在应用开始阶段,就按照需求正确的选择合适的字符集,避免后期不必要的调整. 实战 1.安装MySQL数据库 2.乱码演示 mysql> show variables like 'character_set%'; +-------------------
-
想取消错误的mysql命令怎么办?
敲了一个错误的mysql命令, 想取消怎么办? 如果用ctrl + c, 就直接退出了.怎么办呢?来看看: mysql> show tables; \c +-------------------+ | Tables_in_db_test | +-------------------+ | tb_test | | tb_test_ex | +-------------------+ 2 rows in set (0.00 sec) mysql> show tables \c mysql>
-
Mysql查询很慢卡在sending data的原因及解决思路讲解
因为编写了一个Python程序,密集的操作了一个Mysql库,之前数据量不大时,没发现很慢,后来越来越慢,以为只是数据量大了的原因,但是后来慢到不能忍受了,查了半天,索引能用的都用上了,执行一次还是要3到4秒,不能忍受了. 于是把一些可以缓存的查询全部用redis缓存了起来,大大加速了应用. 但是还是有一些没办法缓存的,或者说,每次查询都是不一样的结果的就没办法了.用navicat的查询概况可以看到卡住的地方是在:Sending data一段,用时3.5秒,占了99%的查询时间. 在网上查了一些
-
详解MySQL是如何解决幻读的
一.什么是幻读 在一次事务里面,多次查询之后,结果集的个数不一致的情况叫做幻读. 而多出来或者少的哪一行被叫做 幻行 二.为什么要解决幻读 在高并发数据库系统中,需要保证事务与事务之间的隔离性,还有事务本身的一致性. 三.MySQL 是如何解决幻读的 如果你看到了这篇文章,那么我会默认你了解了 脏读 .不可重复读与可重复读. 1. 多版本并发控制(MVCC)(快照读) 多数数据库都实现了多版本并发控制,并且都是靠保存数据快照来实现的. 以 InnoDB 为例,每一行中都冗余了两个字断.一个是行的
-
使用shell脚本来给mysql加索引的方法
用shell脚本来给mysql加索引 刚好用到, mark一下: #! /bin/bash tb_base=tb_student_ arr=("0" "1" "2" "3" "4" "5" "6" "7" "8" "9" "a" "b" "c" &q
-
MySQL执行update语句和原数据相同会再次执行吗
背景 本文主要测试MySQL执行update语句时,针对与原数据(即未修改)相同的update语句会在MySQL内部重新执行吗? 测试环境 MySQL5.7.25 Centos 7.4 binlog_format为ROW 参数 root@localhost : (none) 04:53:15> show variables like 'binlog_row_image'; +------------------+-------+ | Variable_name | Value | +------
-
Mysql开启慢SQL并分析原因
第一步.开启mysql慢查询 方式一:修改配置文件 Windows:Windows 的配置文件为 my.ini,一般在 MySQL 的安装目录下或者 c:\Windows 下. Linux:Linux 的配置文件为 my.cnf ,一般在 /etc 下 在 my.ini 增加几行: [mysqlld] long_query_time=2 #5.0.5.1等版本配置如下选项 log-slow-queries="mysql_slow_query.log" #5.5及以上版本配置如下选项 s
-
Mysql优化策略(推荐)
总的来说: 1.数据库设计和表创建时就要考虑性能 2.sql的编写需要注意优化 3.分区.分表.分库 设计表的时候: 1.字段避免null值出现,null值很难查询优化且占用额外的索引空间,推荐默认数字0代替null. 2.尽量使用INT而非BIGINT,如果非负则加上UNSIGNED(这样数值容量会扩大一倍),当然能使用TINYINT.SMALLINT.MEDIUM_INT更好. 3.使用枚举或整数代替字符串类型 4.尽量使用TIMESTAMP而非DATETIME 5.单表不要有太多字段,建议
-
详解使用navicat连接远程linux mysql数据库出现10061未知故障
使用使用navicat连接远程linux mysql数据库出现10061未知故障,设置使用ssh连接后出现2013故障 本机环境:win10 navicat premium mysql数据库主机环境:Linux version 4.15.0-42-generic (buildd@lgw01-amd64-023) (gcc version 7.3.0 (Ubuntu 7.3.0-16ubuntu3)) #45-Ubuntu SMP Thu Nov 15 19:32:57 UTC 2018 mysq
随机推荐
- 浅谈angular.js跨域post解决方案
- 初学web标准的几个误区
- freebsd安装图解
- Asp.net中的页面乱码的问题
- JavaScript怎么判断图片是否加载完成以便获取其尺寸
- PHP基于PDO实现的SQLite操作类【包含增删改查及事务等操作】
- Windows下搭建python开发环境详细步骤
- 基于javascript实现动态时钟效果
- vue 请求后台数据的实例代码
- 创建自己的jquery表格插件
- JQuery的html(data)方法与<script>脚本块的解决方法
- jQuery倒计时代码(超简单)
- JQuery分别取得每行最后一列和最后一行的示例代码
- IE与注册表被锁定的解决办法
- 详解C#中的System.Timers.Timer定时器的使用和定时自动清理内存应用
- JS二分查找算法详解
- python占位符输入方式实例
- 一文了解Python并发编程的工程实现方法
- python交互模式下输入换行/输入多行命令的方法
- Scrapy基于selenium结合爬取淘宝的实例讲解