![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Проблемы - снова ADO выгружается на 30-м разе. [D5]
BS © (2002-07-18 10:29:00)к примеру такой код
var exqurery:TAdoquery;
begin
exquery:=tadoquery.create(nil);
exquery.connectionstring({строка подключения});
exquery.sql.clear;
exquery.sql.add({Инструкция SQL});
...
exquery.free;
После 30-го (или иногда меньше) раза использования процедуры с таким кодом возникает ошибка, даже если инструкция SQL одна и та же. С чем бы это могло быть связано?
Спасибо.
BS (2002-07-18 11:15:00) [1]Спасибо попытаюсь.
sniknik (2002-07-18 11:14:00) [2]да в общем не военная тайна, я вот такой связкой пользуюсь но это зависит от того что используеш
их на самом деле гораздо больше, чуть ли не все вызывает свои исключения :-)
try
......
except
on E: EADOError do ErrMessage:= E.Message;
on E: EOleException do ErrMessage:= E.Message;
on E: EDataBaseError do ErrMessage:= E.Message;
else ErrMessage:= "Неопределенная ошибка!";
end;
BS (2002-07-18 11:08:00) [3]А как узнать , что за ошибка черкни код как определять ошибки - если не трудно.
sniknik (2002-07-18 11:05:00) [4]так ты хоть увидиш конкретно что за ошибка. и будеш действовать соответственно. попробуй чего теряеш.
можно еще вместо create(nil) попробовать create(self), или это принципиально?
BS (2002-07-18 10:54:00) [5]Вопрос к сожалению не в обработчике ошибок, я могу его написать, а в том почему возникает ошибка. Можно, конечно, поместить Адошку на форму и не уничтожать каждый раз - проблема исчезнет, но согласись нужно выяснить в чем же причина.
sniknik (2002-07-18 10:47:00) [6]перепиши код вот так, проблеммы это скорей всего не решит но это будет более .. правильно.
try
exquery:=tadoquery.create(nil);
try
exquery.connectionstring({строка подключения});
exquery.sql.clear;
exquery.sql.add({Инструкция SQL});
...
except
on Err......
end;
finally
exquery.free;
end;