数据库中删除语句Drop、Delete、Truncate的相同点和
网络编程 2021-07-05 16:49www.168986.cn编程入门
数据库中删除语句Drop、Delete、Truncate的相同点和不同点的比较,通过举例说明让大家了解
数据库删除语句的分别介绍
Delete用于删除表中的行(注可以删除某一行;也可以在不删除表的情况下(即意味着表的结构、属性、索引完整)删除所有行)
语法删除某一行Delete From 表名称 Where 列名称=值
删除所有行 Delete From 表名称 或 Delete From 表名称
Drop用于删除表(注将表的结构、属性、索引也会被删除。)
语法Drop Table 表名称
Truncate用于删除表内的数据(注仅删除表内的数据,不删除表本身,相当于Delete语句不写Where子句一样)
语法Truncate Table 表名称
数据库中删除语句的相同点和不同点的比较
相同点
1.truncate和不带where子句的delete,以及drop都能删除表内的数据
2.truncate和delete只删除表数据保留表结构
不同点
1. truncate table tablename
删除表内容释放表空间保留表结构(即只删除表内的数据,不删除表本身。相当于Delete语句不写where子句一样),不使用事务处理即和事务无关
truncate 语句缺省情况下将空间释放到 minextents个 extent,
除非使用reuse storage;truncate 会将高水线复位(回到最开始)。
2. delete table tablename [where子句]
delete属于数据操作语言(DML),不能自动提交事务,需mit提交
这个操作会放到 rollback segement 中,事务提交之后才生效;
如果有相应的 trigger,执行的时候将被触发。
delete 语句不影响表所占用的 extent,高水线(high watermark)保持原位置不动
3. drop table tablename
drop属于数据定义语言(DDL)可以自动提交事务;
drop 语句将删除表的结构被依赖的约束(constrain)、触发器(trigger)、索引(index)【删除表数据删除表结构】;
依赖于该表的存储过程/函数将保留,变为 invalid 状态。
drop 语句将表所占用的空间全部释放。
删除数据的速度,: drop> truncate > delete
使用场合
当你不再需要该表时, 用 drop;
当你仍要保留该表,但要删除所有记录时, 用 truncate;
当你要删除部分记录时(always with a where clause), 用 delete.
注意
对于有主外键关系的表,不能使用truncate而应该使用不带where子句的delete语句,由于truncate不记录在日志中,不能够激活触发器
作者 韩学敏
Delete用于删除表中的行(注可以删除某一行;也可以在不删除表的情况下(即意味着表的结构、属性、索引完整)删除所有行)
语法删除某一行Delete From 表名称 Where 列名称=值
删除所有行 Delete From 表名称 或 Delete From 表名称
Drop用于删除表(注将表的结构、属性、索引也会被删除。)
语法Drop Table 表名称
Truncate用于删除表内的数据(注仅删除表内的数据,不删除表本身,相当于Delete语句不写Where子句一样)
语法Truncate Table 表名称
数据库中删除语句的相同点和不同点的比较
相同点
1.truncate和不带where子句的delete,以及drop都能删除表内的数据
2.truncate和delete只删除表数据保留表结构
不同点
1. truncate table tablename
删除表内容释放表空间保留表结构(即只删除表内的数据,不删除表本身。相当于Delete语句不写where子句一样),不使用事务处理即和事务无关
truncate 语句缺省情况下将空间释放到 minextents个 extent,
除非使用reuse storage;truncate 会将高水线复位(回到最开始)。
2. delete table tablename [where子句]
delete属于数据操作语言(DML),不能自动提交事务,需mit提交
这个操作会放到 rollback segement 中,事务提交之后才生效;
如果有相应的 trigger,执行的时候将被触发。
delete 语句不影响表所占用的 extent,高水线(high watermark)保持原位置不动
3. drop table tablename
drop属于数据定义语言(DDL)可以自动提交事务;
drop 语句将删除表的结构被依赖的约束(constrain)、触发器(trigger)、索引(index)【删除表数据删除表结构】;
依赖于该表的存储过程/函数将保留,变为 invalid 状态。
drop 语句将表所占用的空间全部释放。
删除数据的速度,: drop> truncate > delete
使用场合
当你不再需要该表时, 用 drop;
当你仍要保留该表,但要删除所有记录时, 用 truncate;
当你要删除部分记录时(always with a where clause), 用 delete.
注意
对于有主外键关系的表,不能使用truncate而应该使用不带where子句的delete语句,由于truncate不记录在日志中,不能够激活触发器
作者 韩学敏
编程语言
- 甘肃哪有关键词排名优化购买方式有哪些
- 甘肃SEO如何做网站优化
- 河南seo关键词优化怎么做电话营销
- 北京SEO优化如何做QQ群营销
- 来宾百度关键词排名:提升您网站曝光率的关键
- 卢龙关键词优化:提升您网站排名的策略与技巧
- 山东网站优化的注意事项有哪些
- 四川整站优化怎样提升在搜索引擎中的排名
- 疏附整站优化:提升网站性能与用户体验的全新
- 海南seo主要做什么工作售后服务要做到哪些
- 荣昌百度网站优化:提升您网站的搜索引擎排名
- 河北seo网站排名关键词优化如何做SEO
- 江西优化关键词排名推广售后保障一般有哪些
- 古浪SEO优化:提升你的网站可见性
- 西藏网站排名优化怎么把网站排名在百度首页
- 如何提升阳东百度快照排名:详尽指南