>  기사  >  데이터 베이스  >  ACCESS的真假:一、DROP删除表再重建比Delete from Table1快吗?

ACCESS的真假:一、DROP删除表再重建比Delete from Table1快吗?

WBOY
WBOY원래의
2016-06-07 15:37:231384검색

有时候当我们需要把表中记录全部删除的时候,在很多数据库系统中我们会习惯性选择用truncate table 来实现,truncate table 在很多DBMS中是认为DDL语句,等同于drop table 然后再create table. 速度效率上一般认为远比delete from table高得多。 虽然Drop ta

有时候当我们需要把表中记录全部删除的时候,在很多数据库系统中我们会习惯性选择用truncate table 来实现,truncate table 在很多DBMS中是认为DDL语句,等同于drop table 然后再create table. 速度效率上一般认为远比delete from table高得多。

虽然Drop table 和 delete 没什么可比性,有些类似于去拿 insert 和 select 比较,本身二者之间没有什么可替代性。 drop+create 只能与 delete from tbl; 功能上相通,并且要求在这个表上没外键参照。在实际系统中也很少会设计出需要delete from tbl没有任何条件的全部删除情景。能想到的只有某些时候会用一些临时表来处理数据,不过既然是临时表,一般是用完就删除了,也不需要用delete from tbl;

不地仍是对这个观点感觉怀疑,所以做了个测试以求证。

 

求证: ACCESS中DROP删除表再重建比Delete from Table1快

 

不过还是设计了下面的测试方案。表table1中有1万条记录,(如果嫌少可以影响测试结果大家可以自己调整一下试试贴出结果。) 然后复制成1000这样相同的表。分别用drop / create 和delete对比测试。由于在同一机器上做对比测试,所以理论上在其它不同环境下(不同CPU速度,不同内存,。。。)应该会是相同的相对结果。

 


 

测试结果

t1 start.    5/15/2009 8:03:12 PM
t1 end  .    5/15/2009 8:03:16 PM
t2 start.    5/15/2009 8:03:31 PM
t2 end  .    5/15/2009 8:03:33 PM

 

测试结论
T2() 耗时

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.