CREATE TABLE #Tempcard
(
Clubcard BIGINT NULL,
DateTime DATETIME NULL
)
WHILE 1=1
BEGIN
WITH EventsTop1000
AS
(
SELECT top 200 Clubcard,DateTime
FROM Clubcard
WHERE(DATEDIFF(DAY ,Clubcard.DateTime ,getdate())>120))
DELETE EventsTop200
OUTPUT DELETED.*
INTO #Tempcard;
IF (@@ROWCOUNT = 0)
BREAK;
END
ここでは、バッチ挿入を行っています。テーブルにレコードを挿入したら、#Tempcard
テーブルからデータを削除したくありませんが、 からClubcard
次のデータ セットを取得し、Clubcard
データを に再度挿入する必要があり#Tempcard
ます。
レコードが 1020 の場合、1000 レコードのみが挿入され、残りの 20 レコードは挿入されていません。
問題の解決方法を教えてください。