powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Novell и обновление VFP базы через ADO
7 сообщений из 7, страница 1 из 1
Novell и обновление VFP базы через ADO
    #34405967
Pr0teus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я уже писал тут топик .) Вот дошел вроде до сути происходящего. Почему-то на томах Novell обновления заключенные в транзакцию выдают ошибку Record is not locked на 500 итерации цикла. Соединяюсь с VFP, уже все перепробовал и ничего не помогает ( Ниже пример теста.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
l_objDBCConnection.BeginTrans
    
For cnt =  1  To  2000 
   l_objRecordSet.Open "SELECT * FROM test WHERE dbid=1 .AND. recid=" & cnttmp, l_objDBCConnection, adOpenStatic, adLockOptimistic
                                      
   If (l_objRecordSet.State = adStateOpen) Then
      If (Not l_objRecordSet.BOF) Then
         l_objRecordSet.fields("fld").Value = "TestFld3=" + Str(cnttmp)
         l_objRecordSet.Update
                    
         If (Err <>  0 ) Then
            l_objLog.m_WriteLine "[ Îøèáêà ] "
            l_objRecordSet.CancelUpdate
            Err.Clear
         End If
      End If
                
      l_objRecordSet.Close
   End If
Next

l_objDBCConnection.RollbackTrans

...
Рейтинг: 0 / 0
Novell и обновление VFP базы через ADO
    #34405992
Melkiades
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Выложите проект вместе с таблицей.
...
Рейтинг: 0 / 0
Novell и обновление VFP базы через ADO
    #34406104
Pr0teus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Выкладываю пример теста. В тексте программы надо только путь заменить и положить базу на диск Novell.

Файл:
...
Рейтинг: 0 / 0
Novell и обновление VFP базы через ADO
    #34406205
Pr0teus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Блин, тут почитал немного. BeginTrans держит lock'и открытыми и наверно из-за этого нельзя заблокировать новые записи, т.к. этих lock'ов ограниченное кол-во 8( Придется каждый селект оборачивать в транзакцию, но из-за этого вся логика теряется, как потом откатить все изменения хз.
...
Рейтинг: 0 / 0
Novell и обновление VFP базы через ADO
    #34407081
Фотография PA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
на серваке NetWare:
Set maximum record locks per connection = 2000
ЗЫ. default: 500, range 10 - 100000)
...
Рейтинг: 0 / 0
Novell и обновление VFP базы через ADO
    #34407408
Pr0teus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ну, а если я обновлять буду более 10000 записей, что тогда? А такое вполне вероятно 8(
...
Рейтинг: 0 / 0
Novell и обновление VFP базы через ADO
    #34410436
Программист Дёня
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Pr0teusНу, а если я обновлять буду более 10000 записей, что тогда? А такое вполне вероятно 8(

сделать по уму разбиение такой массы по 2000 записей по какомуто признаку
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Novell и обновление VFP базы через ADO
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]