C++ Builder
| Главная | Уроки | Статьи | FAQ | Форум | Downloads | Литература | Ссылки | RXLib | Диски |

 
TTable. Ошибка., Запись занята другим пользователем
kamerer
Отправлено: 24.06.2006, 23:11


Ученик-кочегар

Группа: Участник
Сообщений: 6



Ошибка дословно: Couldn't perform the edit because another user changed the record.
Код:
TVarRec key[2] = {0,0};
if (!BlockTable->FindKey(key,1))
{
BlockTable->Append();
BlockTable->FieldValues["ID1"] = 0;
BlockTable->FieldValues["ID2"] = 0;
BlockTable->Post();
}
...................................
Здесь вызывается модальная форма.
...................................
if (BlockTable->FindKey(key,1))
BlockTable->Delete(); — здесь ошибка

В процессе доступ к таблице имеет только 1 функция, но в последующем планируется доступ из разных модулей.
Таблица Access доступ к базе осуществляется посредством драйвера ODBC. T.e. генерируется название сессии и BaseName.
В таблице 1 primary индекс с двумя полями и все.
В чем проблема просто не понимаю!
kamerer
Отправлено: 25.06.2006, 14:36


Ученик-кочегар

Группа: Участник
Сообщений: 6



Если перед каждым обращением к таблице сначала ее открывать, а потом сразу закрывать, то ошибки не происходит.

Вернуться в Работа с базами данных в C++Builder