| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > MS SQL Server > Параллельные транзакции |
| Автор: MrNoob 6.8.2010, 14:10 |
| Есть две транзакции, которые только вставляют записи в одну таблицу. Эти транзакции запускаются параллельно, но мне нужно, чтобы они выполнялись последовательно. Т.е. в таблице появились сначала записи первой, а потом второй, а не вперемешку. Т.е. чтобы первая транзакция заблокировала таблицу на вставку новых записей... как-то так. Помогите, пожалуйста. Заранее благодарю =) |
| Автор: VirusUZ 6.8.2010, 16:35 |
| надо deny access или stored procedure |
| Автор: MrNoob 6.8.2010, 17:15 |
| По поводу "надо deny access", это в смысле забрать права на таблицу, а в конце отдать? А по поводу "или stored procedure" совсем не понятно, можно поподробней, пожалуйста. |
| Автор: MrNoob 9.8.2010, 21:29 | ||
Есть код примерно следующего содержания:
Вторая транзакция аналогична, но данные вставляются другие. И возникает следующая ситуация: запускается 1 транзакция во время работы этой транзакции запускается 2ая В таблицу физически будут вставлены данные вперемешку из первой и второй транзакции, а мне хотелось, чтобы вторая транзакция дождалась выполнения первой. Я понимаю, что пытаться привязываться к физическому размещению данных в БД плохо, но такую я придумал задачку=) И с её решением мне помогли. Для блокировки я использую функцию sp_getapplock. Всем спасибо за помощь. |
| Автор: Akina 9.8.2010, 21:34 | ||
Нет. Учите матчасть. |