Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как написать правильно 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


Наверх

Титульная страница Поиск, карта сайта Написать письмо