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

 
Добрый день. Я новенький. И сразу по делу :), ADO — проблема обновления данных
Мишевый_Плюшка
Отправлено: 15.01.2004, 14:48


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

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



Есть ADOQuery.
SQLзапрос следующий:
SELECT Dbo__1sjourn.DOCNO, Dbo__1sjourn.DATE_TIME_IDDOC,
Dbo_dt238.SP229, Dbo_dt238.SP231, Dbo_dt238.SP227,
Dbo_dt238.SP228, Dbo_dt238.SP45030
FROM dbo.DH238 Dbo_dh238, dbo.DT238 Dbo_dt238,
dbo._1SJOURN Dbo__1sjourn
WHERE (Dbo_dh238.IDDOC = Dbo_dt238.IDDOC)
AND (Dbo_dh238.IDDOC = Dbo__1sjourn.IDDOC)

Как видно это запрос связанный из 3-ех таблиц.

Проблема следующая:
Когда я делаю ADOQuery->Refresh();
Получаю ошибку "Insufficient key column information for updating or refreshing". Где надо указать индекс по которому будет происходить Рефрешь?

Спасибо!
FoxVID
Отправлено: 16.01.2004, 10:36


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

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



Я обычно использую следующий вид обновления:
ADOQuery->Active=false;
ADOQuery->Active=true;
Zmey
Отправлено: 02.02.2004, 16:05


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

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



в данном компоненте правильнее вызывать не Refresh, а Requery
Мишевый_Плюшка
  Отправлено: 01.03.2004, 19:24


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

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



Спасибо большое. Работает!

Но появился следуюущий вопрос.
Я в ADODataSet добавил Lookup — поле.
После этого когда я делаю Insert(), вываливается "An unknown error has occurred" .
Удаляю поле, ошибки нет.

Почему не нравится Lookup-поле? ohmy.gif

Спасибо!

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