Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 помогите автоматицировать запрос  [new]
akasha9
Member

Откуда:
Сообщений: 29
Добрый день. Помогите автоматицировать SQL запрос
Задача:
1) Cделать полный бэкап базы даных.
2) Почистить все таблицы, базы данных таким образом что бы в них остались данные только за последние 10 дней .

База на MSSQL 2005 Express Edition.

Понимаю что в ручную проблема решается так:

1. BACKUP DATABASE
2. select * from Table1 where F1 >= '20120326' and F1 < '20120403'
3 апр 12, 13:25    [12356717]     Ответить | Цитировать Сообщить модератору
 Re: помогите автоматицировать запрос  [new]
Дедушка
Member

Откуда: Город трёх революций
Сообщений: 5115
Maintenance Plans
3 апр 12, 13:39    [12356825]     Ответить | Цитировать Сообщить модератору
 Re: помогите автоматицировать запрос  [new]
akasha9
Member

Откуда:
Сообщений: 29
Дедушка
Maintenance Plans


Спасибо за совет но мне не совсем это нужно. Мне нужна помощь в написании запроса который бы автоматически вытаскивал текущую дату и отнимал от нее 10 дней а затем все что меньше даного условия удалял.
Тоесть что то вроде такого: delete все что > (нынешняя дата - 10 дней) и так каждый день.
3 апр 12, 14:03    [12357065]     Ответить | Цитировать Сообщить модератору
 Re: помогите автоматицировать запрос  [new]
E-hauler
Member

Откуда:
Сообщений: 120
akasha9,

В общем случае так

delete from Table1 where F1 >= '20120326' and F1 < '20120403'

Но при большом объеме данных будет тормозить и возможно проще будет пересоздать таблицу Table11 как идентичную по структуре Table1, затем перелить туда искомые строки
(select * from Table1 where F1 >= '20120326' and F1 < '20120403'), а потом удалить таблицу Table1, а таблицу Table11 переименовать в Table1. Как-то так.
3 апр 12, 14:15    [12357199]     Ответить | Цитировать Сообщить модератору
 Re: помогите автоматицировать запрос  [new]
Glory
Member

Откуда:
Сообщений: 104751
akasha9
оторый бы автоматически вытаскивал текущую дату

GETDATE()

akasha9
и отнимал от нее 10 дней

DATEADD()
3 апр 12, 14:24    [12357303]     Ответить | Цитировать Сообщить модератору
 Re: помогите автоматицировать запрос  [new]
E-hauler
Member

Откуда:
Сообщений: 120
Glory,

Точно. Забыл как очевидное :)
3 апр 12, 14:32    [12357378]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить