SQL DELETE – 最大行数
|
对SQL语句中要删除的行数应该有什么限制? 我们需要删除1到数十万行,并且需要应用某种最佳实践限制,以便在每次清空废纸篓时都不会完全杀死SQL服务器或填满日志. 此问题并非特定于任何类型的数据库. 解决方法这是一个非常广泛的问题,基本上归结为“它取决于”.影响它的因素包括:>您的并发级别是多少? delete语句对受影响的行放置独占锁.取决于数据库引擎,已删除的数据分布等,可能会升级到页面或整个表.您的数据读取器是否可以在删除期间被阻止? 但总的来说,我的每个语句的基线为1000行.我使用过的大多数系统(子“企业”)最终都有每个删除500到5000个记录的甜点.我喜欢做这样的事情: set rowcount 500
select 1 -- Just to force @@rowcount > 0
while @@ROWCOUNT > 0
delete from [table]
[where ...] (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- 详解MySQL中的分组查询与连接查询语句
- tsql – 过滤或加入是否先在T-SQL中发生?
- sql-server-2008 – 链接服务器“(null)”的OLE DB提供程序
- sql-server – 无法通过SQL Server Express Management Stu
- 可以使用SQL约束来防止条件成立时更改特定值吗?
- SQL Server用T—SQL命令查询一个数据库中有哪些表的sql语句
- 如何根据另一个表中的组编写sql语句来计算总计?
- LINQ to SQL:处理char(1)字段的方式会引起全表扫描问题
- Sql选择包含字符串部分的行
- 数据库 – 是否有postgres命令列出/删除所有物化视图?
