数据库表的删除方式有drop、delete和truncate哪个最快

数据库表的删除方式有drop、delete和truncate哪个最快,第1张

drop

是删除表

truncate

delete

是清空表内的数据,但

truncate

较快,truncate

是一个DDL语言,他将被隐式提交。可以对

delete

使用

rollback

命令,但不能对

truncate

使用。

用循环可以做的

---创建临时表存放表名:

create table #t

(

no int PRIMARY KEY IDENTITY(1,1),

tablename varchar(50)null,

)

---把所有wiki开头的表存放到临时表

select name into #t from sysobjects where xtype='U'

where name like 'wiki%'

DECLARE @n int

DECLARE @nmax int

DECLARE @tablename1 varchar(50)

set @n = 1

set @nmax = (select max(no) from @t)

set @tablename1 = ''

WHILE @n < @nmax

begin

set @tablename1 = (select tablename from #t where no = @n)

drop @tablename1

set @n = @n +1

end

有不明白的可以问

delete

是dml语句,drop是ddl语句

delete只删除记录,不删除表空间;drop从表空间中删除该表,使该表结构不再存在。

delete执行后需要commit提交才生效,drop不需要手动提交,执行完立即生效

数据库删除语句如下:

1、delete。基础用法:delete from table(表名)。这个用于删除有明确定义的数据或者整个表的数据。比如:id是唯一不可重复的,delete from Student where id=5,即把id=5的唯一的一条数据删除。

2、rop基础用法:drop table +表名称、drop database +数据库名称、drop index +索引名称、drop view +视图名称(*在不同数据库中写法不一定是一样的),只针对删除表来说,delete用于删除整个表的数据以及结构。即把整个表彻底删除,表中的数据和字段等等全部被删除。

3、truncate基础用法:truncate table +表名称。删除表中的全部数据,包括占用的id也会全部清除。表结构不会改变,一般来说想重新往表中导入数据,就会用到这个方法。

数据库删除语句的注意事项。

用delete语句删除掉的数据,原本的被占用id并不会被删除。意思是你删除掉了id中1-10的数据,你再往里加数据,id就是从11开始。所以有些不太熟练数据库的入门者,就可能会看到id断断续续(1,5,7,8,11)排序,有可能是因为使用了detele删除了某些数据。在删除数据之前,可以使用SELECT语句对DELETE语句中的WHERE子句进行测试,这样可以对即将删除的数据进行验证,保证不会勿删。

以上就是关于数据库表的删除方式有drop、delete和truncate哪个最快全部的内容,包括:数据库表的删除方式有drop、delete和truncate哪个最快、数据库名称db162064,如何在sql中批量drop开头为wiki的表、数据库中drop和delete的区别等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9351979.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-27
下一篇 2023-04-27

发表评论

登录后才能评论

评论列表(0条)

保存