alibek писал(а):1. Не пойму, почему нельзя делать DELETE FROM REG WHERE ID <> ...
alibek писал(а):2. Обычно для этого используют транзакции.
alibek писал(а):3. Восстанавливать соединение никто не будет. Ну а время таймаута, после которого соединение будет считаться потерянным, ты можешь задавать, когда подключаешься к источнику данных.
NashRus писал(а):не будет Access блокировать одну запись и уж тем более нельзя удалять "все незаблокированные". порочный подход какой-то.
SergT писал(а):Таким образом можно узнать, кто именно работает с программой Now.
В Access есть понятие "Блокировка изменяемой записи"
Andrey Fedorov писал(а):Можно так-же содержимое ldb-файла смотреть...
Но, IMHO лучше заходить с другого конца и узнавать кто из пользователей открыл файл базы. Безо всяких блокировок записей в таблице.
alibek писал(а):Я бы не рассчитывал слишком сильно на транзакции в Access.
Private WithEvents mo_Conn As ADODB.Connection
Private Sub mo_Conn_Disconnect(adStatus As ADODB.EventStatusEnum, ByVal pConnection As ADODB.Connection)
'
End Sub
Private Sub mo_Conn_InfoMessage(ByVal pError As ADODB.Error, adStatus As ADODB.EventStatusEnum, ByVal pConnection As ADODB.Connection)
'
End Sub
CN.CursorLocation = adUseClient
CN.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=\\Server\Local\ ... \Test.mdb" & ";Persist Security Info=False;Jet OLEDB:Database Password=''"
RG.Open "SELECT * FROM REG Where ID=" & FndID, CN,adOpenDynamic,adLockPessimistic
Debug.Print Rg.CursorType, Rg.LockType
NashRus писал(а):2. при определенных условиях, при попытке обновить данные (oRs.Update), уже измененные другим пользователем, должно вылезти исключение. это легко смоделировать и проверить.
2. Все аналогично, но в другой таблице следует поставить True в поле BLOCK. Это могут делать одновременно 20 пользователей. Кто окажется первым?
Прежде чем поставить True, необходимо убедиться, что его значение False! Но пока проверяю, кто-то может изменить значение. Как грамотнее поступить?
Access прекрасно блокирует запись
NashRus писал(а):не понял. из каких умозаключений это следует ?
NashRus писал(а): может страницу ? а может таблицу ?
NashRus писал(а):в случае с Jet выбор курсора серверного или клиентского - вопрос функциональности, потому как все равно нагрузка на клиенте - эквивалент клиентского курсора.
Сейчас этот форум просматривают: Yandex-бот и гости: 114