数据库表的删除方式有drop、delete和truncate各有什么特点?

 我来答
杂思记
高粉答主

推荐于2019-10-30 · 醉心答题,欢迎关注
知道小有建树答主
回答量:619
采纳率:100%
帮助的人:18万
展开全部

删除数据的速度: drop> truncate > delete

drop、delete和truncate的比较:

一、Delete :删除数据表中的行(可以删除某一行,也可以在不删除数据表的情况下删除所有行)。

删除某一行:Delete from 数据表名称 where 列名称=值;

删除所有行:Delete * from 数据表名称

二、Drop :删除数据表或数据库,或删除数据表字段。

删除数据库:drop database 数据库名称

删除数据表:(表的结构、属性、索引也会被删除)

use 数据库名称

drop table 数据表1名称,数据表2名称

删除数据表字段(列):

use 数据库名称

alter table 数据表名称

drop column 字段名(列名称)

三、Truncate:删除数据表中的数据(仅数据表中的数据,不删除表)。 truncate table 数据表名称“ TRUNCATE TABLE语句是一种快速、无日志记录的方法。TRUNCATE TABLE语句与不含有 WHERE 子句的 DELETE 语句在功能上相同。但是,TRUNCATE TABLE语句速度更快,并且使用更少的系统资源和事务日志资源。”

delete from 表名:删除所有记录,表结构还在,写日志,可以恢复的,速度慢。

drop talbe 表名:删除表的结构和数据。

truncate talbe 表名:删除表中的所有记录,表结构还在,不写日志,无法找回删除的记录,速度快。

出没场合:drop table  tb --tb表示数据表的名字。绝招:删除内容和定义,释放空间。简单来说就是把整个表去掉.以后要新增数据是不可能的,除非新增一个表,例如:一个班就是一个表,学生就是表中的数据,学生的职务就是定义,drop table class,就是把整个班移除.学生和职务都消失。

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式