经常使用的语句!
--大批量导出orders表:insert
DBCC DROPCLEANBUFFERS
DBCC FREEPROCCACHE
go
SET NOCOUNT ON
BEGIN TRANSACTION
INSERT INTO test.dbo.orders with(tablock) SELECT * FROM
bak.dbo.Orders
WHERE ordertime BETWEEN '2010-05-01' AND '2010-05-10'
COMMIT
go
--大批量导出orders表:delete
DBCC DROPCLEANBUFFERS
DBCC FREEPROCCACHE
go
SET NOCOUNT ON
BEGIN TRANSACTION
while 1=1
begin
delete top(1000) from test.dbo.orders with(tablock)
WHERE ordertime BETWEEN '2010-05-01' AND '2010-05-10'
if @@rowcount<1000
break
end
COMMIT
go
本文介绍如何使用SQL批量插入和删除Orders表中的记录,包括设置事务处理以提高效率的方法。示例展示了如何限定时间范围并利用T-SQL进行高效的数据迁移。
380

被折叠的 条评论
为什么被折叠?



