Вниз
Скачать: 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.049 c
3-1085147709
Евгений
2004-05-21 17:55
2004.06.13
My SQL


1-1085757205
FireMan_Alexey
2004-05-28 19:13
2004.06.13
Thread


3-1085419004
Duch
2004-05-24 21:16
2004.06.13
При запуске не находит базу данных


1-1085901658
renat-me
2004-05-30 11:20
2004.06.13
Обращение к объектам


6-1082617656
TOleg
2004-04-22 11:07
2004.06.13
Что это за ошибка - "500 Invalid Port Command"




   Наверх