Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.03.25;
Скачать: CL | DM;

Вниз

АДО: Как обновить только одну строку в наборе   Найти похожие ветки 

 
alex_*** ©   (2006-12-27 11:00) [0]

Пришлось взяться за дельфи. Некоторое время назад пытался решить проблему - полазил по форумам, но результата не получил.
Суть такая. Есть AdoDataSet, в который закачали данные. Добавление/Редактирование происходит из отдельного диалога путем вызова ХП. Как в наборе потом обновить только измененную запись. Решил кто-то такую вещь?


 
sniknik ©   (2006-12-27 12:17) [1]

ADODataSet1.Properties["Unique Table"].Value:= "table";
ADODataSet1.Properties["Resync Command"].Value:= "select * from table where ID = ?";
ADODataSet1.Properties["Update Resync"].Value:= adResyncAll;

ADODataSet1.UpdateCursorPos;
ADODataSet1.Recordset.Resync(adAffectCurrent, adResyncAllValues);
ADODataSet1.Resync([rmExact]);


 
sniknik ©   (2006-12-27 12:32) [2]

наверное нужно пояснить... первые 3 команды это для автообновления записи при ее изменении/добавлении (если изменяется к примеру 1 поле рекордсета, а нужно "подтянуть" дефаултные/связанные на сервере значения других полей, которые изменятся тоже)

вторые три это "чистое" обновление одной записи, нужно если изменили запись не в том же рекордсете, а отдельно (командой в ADOCommand к примеру).


 
alex_*** ©   (2006-12-27 12:52) [3]

Спасибо, попробую. Что-то такое писал, для MS SQL, Но profiler упорно показывал SELECT без WHERE. Может что не так делал. Щас еще раз попробую



Страницы: 1 вся ветка

Текущий архив: 2007.03.25;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.056 c
15-1172439246
Riply
2007-02-26 00:34
2007.03.25
Ничавойное состояние.


15-1172568253
ArtemESC
2007-02-27 12:24
2007.03.25
Сквозное кэширование и кэширование с обратной связью...


11-1151791408
Александра
2006-07-02 02:03
2007.03.25
dll : вторая форма и выгрузка.


15-1172678879
Calibr
2007-02-28 19:07
2007.03.25
WinRAR парольчик


1-1167998676
LFeather
2007-01-05 15:04
2007.03.25
плейлист как в WinAMP е