cri*_*vin 2 sql-server-2005 sql-server truncate
我知道这里面有很多变量,我不是在寻找精确的分钟数:秒 :) 我已经阅读了许多资源,这些资源声明 aTRUNCATE使用的资源比 a 少得多DELETE,因此执行速度更快。但是没有提到数量级。由于 aTRUNCATE是 DDL(数据定义语言)操作而不是 DML(数据操作语言)操作,并且只有系统表是事务的一部分,因此我认为它不会花费很长时间。
任何有经验的人都可以使用接近这种大小的桌子来做这件事,可以提供一些见解吗?我们最多谈一分钟,最多一个小时,几天,几周?
一毫秒左右。
截断是 O(1) - 纯元数据操作。
这是假设表上没有并发活动。
截断可能需要等到现有读取完成才能获取Sch-M(模式修改)锁。
对于大表,实际的释放是在后台线程(SQL Server 2000 SP3 以后)上异步完成的。
有关围绕 truncate 的其他一些误区,请参阅每天 SQL Server DBA 误区:(19/30) TRUNCATE TABLE is non-logged by Paul S. Randal。
| 归档时间: |
|
| 查看次数: |
4979 次 |
| 最近记录: |