用法:
1、当你不再需要该表时, 用 drop;

2、当你仍要保留该表,但要删除所有记录时, 用 truncate;

3、当你要删除部分记录或者有可能会后悔的话, 用 delete。

删除程度可从强到弱如下排列:

  1. drop table tb;

    drop 是直接将表格删除,无法找回。例如删除 user 表:

drop table user;
2. truncate (table) tb;

truncate 是删除表中所有数据,但不能与where一起使用;

TRUNCATE TABLE user;
3. delete from tb (where);

delete 也是删除表中数据,但可以与where连用,删除特定行;

– 删除表中所有数据
delete from user;
– 删除指定行
delete from user where username =‘Tom’;

truncate 和 delete 的区别:

  1. 事物

truncate删除后不记录mysql日志,因此不可以rollback,更不可以恢复数据;而 delete 是可以 rollback ;

原因:truncate 相当于保留原mysql表的结果,重新创建了这个表,所有的状态都相当于新的,而delete的效果相当于一行行删除,所以可以rollback;

  1. 效果

效率上 truncate 比 delete快,而且 truncate 删除后将重建索引(新插入数据后id从0开始记起),而 delete不会删除索引 (新插入的数据将在删除数据的索引后继续增加)

  1. truncate 不会触发任何 DELETE触发器;

  2. 返回值

delete 操作后返回删除的记录数,而 truncate 返回的是0或者-1(成功则返回0,失败返回-1);

delete 与 delete from 区别:
如果只针对一张表进行删除,则效果一样;如果需要联合其他表,则需要使用from :

delete tb1 from tb1 m where id in (select id from tb2)

Mysql 删除数据表的三种方式详解相关推荐

  1. 删除mysql表_Mysql 删除数据表的三种方式详解

    用法: 1.当你不再需要该表时, 用 drop; 2.当你仍要保留该表,但要删除所有记录时, 用 truncate; 3.当你要删除部分记录或者有可能会后悔的话, 用 delete. 删除程度可从强到 ...

  2. MySQL创建数据表的三种方式

    目录 1. 常规 create table 方式 2. create table2 like table1 方式 3. 根据查询 table1 的结果集来创建表 table2 方式 1. 常规 cre ...

  3. mysql 删除数据表中数据_Mysql-删除数据表-三种方式详解

    Mysql 删除数据表的三种方式详解 用法: 1.当你不再需要该表时, 用 drop; 2.当你仍要保留该表,但要删除所有记录时, 用 truncate; 3.当你要删除部分记录或者有可能会后悔的话, ...

  4. 全站仪与计算机之间的数据传输,必看!全站仪数据传输的三种方式详解,都安排得明明白白(上)...

    原标题:必看!全站仪数据传输的三种方式详解,都安排得明明白白(上) 科力达全站仪数据传输 一般而言,全站仪的数据传输方式有三种,分别是通过串口.USB.SD卡三种方式,因为电脑配置等因素的不同,一些数 ...

  5. 【Linux】部署Springboot项目到Linux服务器以及linux服务器下载文件的三种方式详解

    Linux学习之路 初识Linux Linux内核 由芬兰人林纳斯·托瓦兹(Linus Torvalds)在赫尔辛基大学上学时出于个人爱好而编写 Linux 是一套免费使用和自由传播的类Unix操作系 ...

  6. 多表连接的三种方式详解 HASH JOIN MERGE JOIN NESTED LOOP

    在多表联合查询的时候,如果我们查看它的执行计划,就会发现里面有多表之间的连接方式. 之前打算在sqlplus中用执行计划的,但是格式看起来有点乱,就用Toad 做了3个截图. 从3张图里我们看到了几点 ...

  7. uni-app小程序引入iconfont的三种方式详解(无需下载文件到项目)

    重要背景说明 官网iconfont的引入方式有三种分别为:Unicode.Font class.Symbol, 其中已明确说明 Unicode.Font class 这两种引入方式 不支持多色. 单色 ...

  8. php 多参数函数,php自定义函数的参数在函数间传递的三种方式详解

    在调用函数时,需要向函数传递参数,被传入的参数成为实参,而函数定义时的参数为形参.上一章节我们对php自定义函数的参数进行了实例讲解,本章节就重点介绍一下函数间参数传递的3种方式:按照值传递,按引用传 ...

  9. 【REACT NATIVE 系列教程之四】刷新组件RENDER(重新渲染)的三种方式详解

    本站文章均为 李华明Himi 原创,转载务必在明显处注明:  转载自[黑米GameDev街区] 原文链接: http://www.himigame.com/react-native/2242.html ...

最新文章

  1. hdu 1069 Monkey and Banana (LIS)
  2. Django 知识补漏单例模式
  3. QProcess 类
  4. w ndows7防火墙文件名,Windows7中的防火墙是什么? 爱问知识人
  5. Linux 文件安全之随机数生成器
  6. Intellj(IDEA) warning no artifacts configured
  7. 数据库分库分表、读写分离的原理和实现,以及使用场景
  8. java通过url获取网页内容_Java语言通过URL读取网页数据并保存到本地文件(代码实例)...
  9. #边学边记 必修4 高项:对事的管理 第六章 项目质量管理 质量管理基础
  10. memcached-tool
  11. 网吧服务器发消息,网吧盗号常见途径总结以及解决办法
  12. 20190729杭电多校第三场
  13. 牛客网python版本多行输入输出
  14. Introduce myself
  15. Vue项目中的Emitted value instead of an instance of Error问题
  16. 【渝粤题库】陕西师范大学111118 商法学 作业
  17. 2018年算法工程师秋招经验贴(微软、华为、网易游戏、阿里offer)
  18. BIM在工程中的20种典型应用
  19. 学数控编程,知道这三段代码就够了,很实用
  20. 《深入理解Java虚拟机第3版》垃圾收集器与内存分配策略、虚拟机性能监控故障处理工具

热门文章

  1. Chrome 开发工具之 Memory
  2. 【python】lxml-The E-factory
  3. 网游中的网络编程系列1:UDP vs. TCP
  4. form的get与post方式的区别(转)
  5. 【数据结构与算法】内部排序之一:插入排序和希尔排序的N中实现(不断优化,附完整源码)...
  6. [Python] Python 之 __new__() 方法与实例化
  7. C# 5.0将带来的五大新特性
  8. silverlight 3 blend3最新版本 破解方法
  9. 视频质量评价PSNR
  10. Android9.0 setStereoVolume左右声道流程(二十四)