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

Откуда: из России
Сообщений: 901
Создаю процедуру чистки данных, делаю так:
- получаю ключи на удаления , кидаю их во времянку.
- по этим ключам делаю удаление из взаимосвязанных таблиц
удаление идет подряд, пример:
удаление 1
удаление 2
удаление 3
удаление 4
удаление 5
удаление 6
...
удаление 10 удаляю из основной таблицы.

каждое удаление удаляет от 1000 до 15000 строк, по разному.
запуск процедуры планируется раз в день
Как их лучше сделать, каждое удаление в отдельной транзакции или все в одной транзакции?
я пока сылаюсь на каждое удаление записать в отдельную транзакцию.
2 апр 12, 13:23    [12350794]     Ответить | Цитировать Сообщить модератору
 Re: Помогите спроектировть удаление данных  [new]
Владимир СА
Member

Откуда:
Сообщений: 7915
А может лучше связи между таблицами правильно организвать?
Тогда и команда всего одна...
2 апр 12, 13:45    [12351017]     Ответить | Цитировать Сообщить модератору
 Re: Помогите спроектировть удаление данных  [new]
Glory
Member

Откуда:
Сообщений: 104751
Slava_Nik
Как их лучше сделать, каждое удаление в отдельной транзакции или все в одной транзакции?

Так, как это требуют условия задачи.
Что будет, если "удаление 10" закончится ошибкой ?
2 апр 12, 13:50    [12351061]     Ответить | Цитировать Сообщить модератору
 Re: Помогите спроектировть удаление данных  [new]
Slava_Nik
Member

Откуда: из России
Сообщений: 901
Владимир СА
А может лучше связи между таблицами правильно организвать?
Тогда и команда всего одна...


так поставлены условия задачи, и так реализовано приложение.
2 апр 12, 13:56    [12351123]     Ответить | Цитировать Сообщить модератору
 Re: Помогите спроектировть удаление данных  [new]
Slava_Nik
Member

Откуда: из России
Сообщений: 901
Glory
Slava_Nik
Как их лучше сделать, каждое удаление в отдельной транзакции или все в одной транзакции?

Так, как это требуют условия задачи.
Что будет, если "удаление 10" закончится ошибкой ?


да ничего , в следующий раз запуск произойдет и удалит, не сильно кретично.
только если удаление 10 не произойдет , когда каждое удаление в будет в транзакции , то откатится только 10 удаление, прошлые удаления будут зафиксированы., в следующий запуск удалится только удаление 10 + новые данные,
а если все это удаление в одной транзакции, то откатятся все 10 удалений. я с этой стороны смотрю.
2 апр 12, 13:59    [12351154]     Ответить | Цитировать Сообщить модератору
 Re: Помогите спроектировть удаление данных  [new]
Glory
Member

Откуда:
Сообщений: 104751
Slava_Nik
я с этой стороны смотрю.

А с какой стороны на это смотрит бизнесс ?
С какой стороны на это смотрят другие пользователи базы ?
Является ли для них такое состояние таблиц _логически_ верным ?
2 апр 12, 14:03    [12351184]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить