2016-08-26 6 views
0

я включил отслеживание изменений в моей базе данных Trans и таблица СотрудникMS SQL Server 2012 отслеживания изменений автоматической очистки не работает

ALTER DATABASE [Trans] 
SET CHANGE_TRACKING = ON 
(CHANGE_RETENTION = 5 MINUTES , AUTO_CLEANUP = ON) 

ALTER TABLE [Employee] 
ENABLE CHANGE_TRACKING 
WITH (TRACK_COLUMNS_UPDATED = OFF) 

Я некоторое изменение в моих таблицах сотрудников затем проверить данные отслеживания изменений

SELECT * FROM CHANGETABLE(CHANGES [Employee], 0) AS ETbl 

Это показывает данные, которые изменились. Я знаю, что процесс очистки является асинхронным, поэтому я ждал немного больше времени хранения (скажем, 8 минут). Я все еще получаю результат с запросом. Процесс очистки выполняется через 2 дня.

Я искал в Интернете о нем развиваемой

Change Tracking Auto Cleanup doesn't work

Change Tracking cleanup

, но не нашел правильный ответ.

ответ

0

Change Tracking auto cleanup - фоновый поток, который просыпается каждые 30 минут и будет перебирать список таблиц, которые включены для отслеживания изменений.

Он очистит истекшие записи с соответствующих боковых таблиц. Он идентифицирует истекшие записи на основе периода хранения, который вы настроили при включении отслеживания изменений в базе данных. Значение по умолчанию - 2 дня, что означает, что каждый раз, когда он будет очищать эти записи в вашем боковом столе, возраст которых превышает 2 дня.