数据库中删除语句Drop、Delete、Truncate的相同点和不同点的比较(举例说明)
1、数据库删除语句的分别介绍:
- Delete:用于删除表中的行(注:可以删除某一行;也可以在不删除表的情况下(即意味着表的结构、属性、索引完整)删除所有行)
语法:删除某一行:Delete From 表名称 Where 列名称=值
删除所有行: Delete From 表名称 或 Delete * From 表名称
- Drop:用于删除表(注:将表的结构、属性、索引也会被删除。)
语法:Drop Table 表名称
- Truncate:用于删除表内的数据(注:仅删除表内的数据,不删除表本身,相当于Delete语句不写Where子句一样)
语法:Truncate Table 表名称
2、相同点:
1.truncate和不带where子句的delete,以及drop都能删除表内的数据
2.truncate和delete只删除表数据保留表结构
3、不同点:
1. truncate table tablename
删除表内容释放表空间保留表结构(即:只删除表内的数据,不删除表本身。相当于Delete语句不写where子句一样),不使用事务处理即和事务无关
2. delete table tablename [where子句]
delete属于数据操作语言(DML),不能自动提交事务,需commit提交
如果有相应的 trigger,执行的时候将被触发。
3. drop table tablename
drop属于数据定义语言(DDL)可以自动提交事务;
drop 语句将删除表的结构被依赖的约束(constrain)、触发器(trigger)、索引(index)【删除表数据同时删除表结构】;
drop 语句将表所占用的空间全部释放。
4、删除数据的速度
一般来说: drop> truncate > delete
5、使用场合:
当你不再需要该表时, 用 drop;
当你仍要保留该表,但要删除所有记录时, 用 truncate;
当你要删除部分记录时(always with a where clause), 用 delete.
6、注意:
对于有主外键关系的表,不能使用truncate而应该使用不带where子句的delete语句,由于truncate不记录在日志中,不能够激活触发器
转载于:https://www.cnblogs.com/charon2/p/11326896.html
数据库中删除语句Drop、Delete、Truncate的相同点和不同点的比较(举例说明)相关推荐
- 转 Oracle 删除表,oracle 中删除表 drop delete truncate 的区别
相同点,使用drop delete truncate 都会删除表中的内容 drop table 表名 delete from 表名(后面不跟where语句,则也删除表中所有的数据) truncate ...
- Mongodb数据库中修改器$push和$addToSet的相同点和不同点
Mongodb数据库中修改器$push和$addToSet的相同点和不同点 对于Mongodb数据库而言,数据的修改会牵扯到内容的变更,结构的变更(数组的变更),所以Mongodb数据库设计的时候就提 ...
- sql语句中删除表 drop、truncate和delete的用法
truncate与delete 使用上区别 ? truncate 删除记录后不可恢复的,不受事务管理,原理:先删除整个表,重新创建 delete 可以被事务管理 ,在事务中删除数据可以回滚恢复,原理: ...
- 数据库中删除数据常用命令-truncate、drop、delete
数据库的DDL与DML含义与区别 DDL:操作数据库.表.列等(指对这些对象进行操作),使用的关键字:CREATE.ALTER.DROP. DML:是对表中的数据进行增.删.改的操作,使用的关键字:I ...
- Mysql中删除语句delete、truncate、drop的区别
Mysql中删除语句delete.truncate.drop的区别 1.DROP: 用法: DROP TABLE 表名 DDL语句,删除数据和表结构,释放空间资源.注意:操作不放到rollback s ...
- T-SQL中删除语句区别 - 转自: 搜搜问问
T-SQL中删除语句区别 [ 标签:sql,语句 ] delete from和truncate table 他们的相同点是什么 不同点又是什么?? 多用在什么地方?? ================ ...
- N叉树、page_size、数据库严格模式修改、数据库中delect和drop的不同
"N叉树"的N值在MySQL中是可以被人工调整吗? 其中有两种方法调整: 1.通过改变key值来调整 N 叉树中非叶子节点存放的是索引信息,索引包含 Key 和 Point 指针. ...
- SQL2000数据库中删除“坏表”的方法
SQL2000数据库中删除"坏表"的方法 在一些网站或者软件系统中,由于安全或者程序异常等问题,可能会在SQL Server 2000中造成一个异常问题:在企业管理器中打开数据库发 ...
- 在 MySQL 数据库中删除重复记录的步骤
在 MySQL 数据库中删除重复记录的步骤 当我们在处理数据库中的数据时,有时候会出现重复记录的情况,这些重复记录会影响数据的正确性,需要将其删除.下面是在 MySQL 数据库中删除重复记录的步骤: ...
最新文章
- python数据趋势算法_Python数据拟合与广义线性回归算法学习
- hdu2846 字典树(带id的)
- Spring MVC文件上传
- php input多选,利用css3更改input单选和多选样式的方法
- 删除数据库中所有存储过程和函数的sql语句
- 如何使用Retrofit,OkHttp,Gson,Glide和Coroutines处理RESTful Web服务
- python读json文件中不同的数据类型_怎么使用python提取json文件中的字段
- 从容器到微服务,技术架构、网络和生态详解
- 利用uiautomator2刷金币
- Python爬虫教程:验证码的爬取和识别详解
- java哈喽word,JavaWeb之HelloWord
- iOS开发——源代码管理——git(分布式版本控制和集中式版本控制对比,git和SVN对比,git常用指令,搭建GitHub远程仓库,搭建oschina远程仓库 )...
- gd公文文件转换成pdf格式
- java 方法(函数)详解
- 解决 Win11 资源管理器卡顿
- MogDB官网正式亮相!单机256万tpmC再创佳绩
- 毕业论文速成指南来了!
- python中oserror_[python] 解决OSError:
- 虚拟主机好还是云服务器,虚拟主机好还是云服务器
- 函数式编程(一):概念及特点
热门文章
- java多线程遇到的问题_关于Java多线程遇到的问题.
- 睡袋放置_第一次露营要带上什么?帐篷、睡袋怎么挑、怎么买?新手入门攻略...
- keras 多层lstm_《Keras 实现 LSTM》笔记
- linux 脚本 获取当前目录,Linux下获取脚本当前工作目录的一点感触
- mysql5.6 忘记root密码后,如何找回密码?
- 【uni-app】自定义导航栏/标题栏
- nginx http proxy 反向代理
- 【maven】改造已有项目
- 上顿号符号_标点符号常见错误,读后涨知识了
- php获取今天是几号,php 获取今日、昨日、上周、本月的起始时间戳和结束时间戳以及当月共有多少天...