我们有一个包含 150 多万条记录的表。我们需要清除/删除所有行。由于删除操作会写入 t-log,因此删除操作将永远持续下去,并且我们无法更改整个数据库的恢复模型。我们已经测试了截断表选项。
我们意识到截断会从表中释放页面,如果我没记错的话,它们可以重用,但不会自动收缩数据库。因此,如果我们想减小数据库大小,我们确实需要在截断表后运行收缩数据库命令。
这是正常程序吗?有什么需要注意或注意的地方,或者有没有更好的替代方案?
最佳答案
truncate
就是您要寻找的内容。如果之后需要缩小数据库,请运行收缩。
这个MSDN refernce (如果您说的是 T-SQL)比较删除行与截断的幕后情况。
关于sql - 批量删除(截断与删除),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1772984/