|
Execute the following Microsoft SQL Server Transact-SQL (T-SQL) script in Management Studio (SSMS) Query Editor, SQLCMD or other client software
to test batch delete:
USE AdventureWorks
GO
SELECT *INTO #SalesOrderHeader
FROM Sales.SalesOrderHeader
CREATE UNIQUE CLUSTERED INDEX #OrderDateSalesOrderID
ON #SalesOrderHeader(OrderDate, SalesOrderID)
SELECT count(*) FROM #SalesOrderHeader
DECLARE @BatchSize int
SET @BatchSize = 500
WHILE 1 = 1
BEGIN
DELETE TOP (@BatchSize)
FROM #SalesOrderHeader
WHERE OrderDate < '20060101'
IF @@rowcount < @BatchSize
BREAK
END
SELECT count(*) FROM #SalesOrderHeader
DROP TABLE #SalesOrderHeader
GO
|