![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как написать правильно UPDATE-запрос? [D5, Access]
Tornado © (2003-02-13 07:59:00)Выбираю данные с помощью ADOQuery1 (select), отображая их в DBGrid. Как мне правильно написать запрос на обновление чтобы:
1. Обновлялась только та запись на которой в данный момент находится курсор в DBGrid.
2. Данные обновлялись через соединенные с НД ADOQuery1 DBEdit-ы.
3. Обновленные данные сразу отображались в DBGrid
Спасибо.
Соловьев (2003-02-13 12:21:00) [1]
> sniknik © (13.02.03 10:43)
> Соловьев © (13.02.03 09:30)
> > where field_id=:id //Параметр!
???
sniknik (2003-02-13 10:43:00) [2]Соловьев © (13.02.03 09:30)
>where field_id= :id//Параметр!
Tornado © (13.02.03 10:00)
> Так и написал (...WHERE ID = ID), //сам с собой (безусловно!)
так да не так.
Stas (2003-02-13 10:14:00) [3]А пробова CursorType:=ctKeySet ?
Соловьев (2003-02-13 10:06:00) [4]
> Tornado © (13.02.03 10:00)
> > Соловьев © (13.02.03 09:30)
>
> Так и написал (...WHERE ID = ID), обновлять - обновляет,
> но ВСЕ записи таблицы...
значит у тебя ID не уникально.
Tornado (2003-02-13 10:00:00) [5]> Соловьев © (13.02.03 09:30)
Так и написал (...WHERE ID = ID), обновлять - обновляет, но ВСЕ записи таблицы...
> Stas © (13.02.03 09:32)
Поставил, при CursorLocation:=ClUseServer;
CursorType:=ctDynamic выдает ошибку "Dataset does not support bookmarks, which are required for multi-record data controls", при clUseClient - все нормально, только обновляет все записи
Stas (2003-02-13 09:32:00) [6]Tornado !!! Попробуй в свойствах своего запроса поставить CursorLocation:=ClUseServer;
CursorType:=CtKeySet (ctDynamic).
Соловьев (2003-02-13 09:30:00) [7]В свойстве SQL написать:
UPDATE table1
set field1=:field1, field2=:field2, ...
where field_id=:id