Удаление старых записей из таблицы Microsoft SQL Server

Q1011

При протоколировании пакетов или хостов HTTP в базу данных, очень часто требуется периодически удалять записи, которые появились в базе данных определенное количество дней назад. Для Microsoft SQL Server можно воспользоваться следующим скриптом:

delete from packets where DATEDIFF(dd,ts,GETDATE())>30

Данный скрипт удаляет из таблицы packets все записи, которые появились более чем 30 дней назад. Поле ts в данной таблицы выполняет роль временной метки, которая указывает на момент появления данной записи в таблицы.

Вы можете запускать этот скрипт автоматически через определенные интервалы времени используя SQL Server Agent.