![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
БД и многопоточность [D6, Access]
Vilux © (2004-03-20 13:44:00)Какие "подводные камни" меня ждут при работе с БД (открытие, изменение, закрытие) мнопоточно? А то наблюдаются некоторые глюки. Я использую компоненты ADO. И еще вопрос, создаю SQL запрос INSERT, пихаю его в TAdoQuery, потом делаю SELECT, но этот новая запись не видится. Как мне обновить базу? Пробовал Ado.Close и потом Ado.Open, работает... но если сделать многопоточность, то и этот вариант не работает.
Desdechado (2004-03-21 16:51:00) [1]Что подразумевается под многопоточностью?
Много параллельных запросов к БД? В рамках одного или нескольких соединений?
Чтобы увидеть изменения, произведенные другим пользователем/потоком, он должен подтвердить транзакцию, а ты должен переоткрыть запрос. Если все это выполняется параллельно, то моменты переоткрытия тебе неизвестны, поэтому часть изменений (которые не подтверждены) ты не увидишь.
Кроме того, клиенты не всех СУБД поддерживают многопоточность в рамках одного соединения.