Вниз
Скачать: CL | DM;

RefreshSQL   Найти похожие ветки 

← →
EdSl   (2003-02-26 22:33) [0]

Как изменить свойство RefreshSQL компонента IBDataSet не переоткрывая таблицу. То есть изменение происходит только для текущей записи, а необходимо, чтобы оно происходило для всех записей, у которых значения в определенном поле совпадают.


← →
DarkGreen ©   (2003-02-27 05:40) [1]

Используй TIBUpdateSQL в нем в запросе рефреш пропиши
select * from My_Table where Key_Field = :KeyField тогда он будет рефрешить только одну строку из датасета


← →
ЮЮ ©   (2003-02-27 07:27) [2]

Никак. Запрос в RefreshSQL предназначен именно для однозначного определения одной (текущей) записи. А разве можно изменить несколько записей DataSet-а одновременно ? :-)


← →
DarkGreen ©   (2003-02-27 09:53) [3]

select for update? :-)


← →
Александр Спелицин ©   (2003-02-27 16:42) [4]


> То есть изменение происходит только для текущей записи,
> а необходимо, чтобы оно происходило для всех записей, у
> которых значения в определенном поле совпадают.

Так отфильтруйте эти записи и для каждой сделайте RefreshRecord.


← →
kaif ©   (2003-02-28 01:06) [5]

var
r: integer;

with IBQuery1 do
begin
r := RecNo;
DisableControls;
try
Locate( критерии поиска );
while not eof and ( условие ) do
begin
Refresh;
Next;
end;
finally
RecNo := r;
EnableControls;
end;
end;


Надеюсь, набор упорядочен по полю, которое будет меняться. Если нет, то нужно сканировать весь набор. Тогда уж лучше переоткрыть запрос.



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.013 c
7-64404
Konstantin
2003-01-25 18:40
2003.03.20
Как связать две подпрограммы (запрос-ответ)


7-64420
Oleg_G
2003-01-22 23:56
2003.03.20
Как можно узнать объем Винта в Гб и ОЗУ


3-63976
cherox
2003-02-27 12:24
2003.03.20
TADOQuery


6-64250
Barmutik
2003-01-26 17:02
2003.03.20
Помогите с WebBrowser


3-63962
Olivka
2003-02-22 21:49
2003.03.20
транзакции в IB (Firebird)




   Наверх