SQL Server 2000: ограничить количество строк - PullRequest
2 голосов
/ 26 июня 2009

Есть ли способ ограничить количество строк в базе данных SQL Server 2000, чтобы старые строки удалялись при поступлении новых?

У меня есть некоторые данные, которые я хотел бы хранить около тридцати дней - после этого мне все равно, будут ли данные располагаться или удаляться - до тех пор, пока таблица не станет огромной.

Любые другие предложения или приветствия - я неплохо умею программировать на базе данных, но я ни в коем случае не администратор баз данных.

Спасибо.

Ответы [ 2 ]

5 голосов
/ 26 июня 2009

Не явно, нет. Однако вы можете настроить TRIGGER на INSERT для базы данных, чтобы удалять любые строки старше тридцати дней (поэтому вы удаляете строки только по мере добавления, а не только ради этого). Или вы можете использовать агент SQL Server и настроить хранимую процедуру для выполнения

delete from table where insertdate <= dateadd(d, -30, getdate())

3 голосов
/ 26 июня 2009

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

Не существует встроенного в систему способа ограничения количества строк, и SQL Server автоматически выбрасывает самые старые из них.

MARC

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...