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

Отмена SQL запроса   Найти похожие ветки 

 
inic ©   (2004-05-21 11:25) [0]

Один из потоков приложения выполняет (или запускает) SQL-запрос (с помощью TSQLQuery+TSQLConnection). Допустим этот запрос достаточно длителен. Каким образом можно в этот момент отменить этот запрос из главного потока.
Может быть TSomeThread.Connection.Close ?
Заранее спасибо!!!


 
Sandman25+1   (2004-05-21 11:30) [1]

Стандартный ответ - запрос должен проверять какой-нибудь флаг (например, поле в таблице, причем желательно читать как Dirty Read), а нажатие на кнопку "Отмена" должно устанавливать этот флаг.
Естественно, это работает только в том случае, если запрос имеет циклическую структуру (хранимая процедура с for select или вызовами нескольких других процедур). Если весь запрос состоит из update mytable set filed1 = func(field2) и выполняется долго только потому, что в таблице несколько сот миллионов записей, то тут ничего уже не поможет ИМХО.


 
inic ©   (2004-05-21 11:33) [2]

Спасибо!!!!!!!!!!



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

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



Память: 0.45 MB
Время: 0.03 c
1-1085946374
Fly
2004-05-30 23:46
2004.06.13
Вопрос


3-1085161510
Elast
2004-05-21 21:45
2004.06.13
Setup FB1.5


14-1085537524
Думкин
2004-05-26 06:12
2004.06.13
С днем рождения! 25 мая


1-1086009645
h010d
2004-05-31 17:20
2004.06.13
Control ы в стиле XP


3-1083175286
vlbelugin
2004-04-28 22:01
2004.06.13
DB2 и dbExpress




   Наверх