|
оптимистическая блокировка
|
|||
---|---|---|---|
#18+
MS SQL2000(MSDE)+AccessXP.adp На сервере запрос с триггером Instead of. На клиенте связанная форма,где в качестве источника данных этот запрос. Запустив клиентов на разных машинах и пытаясь создать конфликт записи при обновлении(блокировка оптимистическая) никаких сообщений от Access не получаю(присутствует обработчик события OnError для формы,где идет проверка на номер ошибки 7787 и 7878). Private Sub Form_Error(DataErr As Integer, Response As Integer) On Error GoTo Form_ErrorErr Dim strMsg As String Select Case DataErr Case adhcErrWriteConflict strMsg = "Another user has updated this record " & _ "since you began editing it. " & vbCrLf & vbCrLf & _ "The record will be refreshed with the other " & _ "user's changes before continuing." MsgBox strMsg, vbOKOnly + vbInformation, _ "Record Refresh" Response = acDataErrContinue Case adhcErrDataChanged strMsg = "Another user has updated this record " & _ "since you began viewing it. " & vbCrLf & vbCrLf & _ "The record will be refreshed with the other " & _ "user's changes before continuing." MsgBox strMsg, vbOKOnly + vbInformation, _ "Record Refresh" Response = acDataErrContinue Case Else Response = acDataErrDisplay End Select DoCmd.Hourglass False Form_ErrorEnd: Exit Sub Form_ErrorErr: MsgBox "Error " & Err.Number & ": " & Err.Description, _ vbOKOnly + vbCritical, "Error Handler Error" End Sub При этом срабатывает триггер Instead of update на запросе,но таблицы inserted и deleted пустые. В другом случае(с другой формой и запросом с триггером Instead of) ошибка ловится,но на Response = acDataErrContinue никакой реакции и после выхода из этой процедуры появляется сообщение “Multi-step OLE DB operation generated errors.Check each OLE DB status value,if available.No work was done” и обновления записи не происходит.В чем проблема? Означает ли это,что AccessXP не обнаруживает обновление записи при оптимистической блокировке и клиентском курсоре ? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.07.2002, 17:07 |
|
|
start [/forum/topic.php?fid=45&msg=32039898&tid=1683459]: |
0ms |
get settings: |
9ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
25ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
34ms |
get tp. blocked users: |
1ms |
others: | 14ms |
total: | 112ms |
0 / 0 |