[기본 최적화 실천] [1.5] 어떻게 온라인에서 대량의 데이터를 안정적으로 삭제/갱신합니까?

2130 단어
사고: 반드시 분할 삭제/갱신을 해야 한다. 그렇지 않으면 업무 규모가 너무 크고 삭제 시간이 너무 길며 문제가 발생하지 않도록 백업표가 있어야 한다.
가장 좋은 실천은 다음과 같다. 사례를 삭제하고 같은 것을 갱신하면 여기에 특별히 쓰지 않는다.
while 1=1
begin
WAITFOR DELAY '00:00:01' 
DELETE TOP (3000) A output deleted.* into Db_Del..del_sys_users_goods 
FROM Db_Tank..sys_users_goods A where isexist=0

IF @@ROWCOUNT<3000 OR @@ERROR<>0 OR convert(varchar(12),getdate(),24) > '18:00:00' 
BREAK 
end

좋은 웹페이지 즐겨찾기