
![]() |
Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
|
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[216.73.216.21] |
![]() |
|
Сообщ.
#1
,
|
|
|
Соединил Вelphi7.0 c MySQL5.1 через driver ODBC.
При выполнении SQL-запроса при помощи функции DELETE или load data infile сам запрос выполняется но возникает ошибка ADOQuery1:CommandText does not return a result set., а при выполнении функции SELECT ничего не возникает. Вопрос: Что это означает и стоит ли росстраиваться по этому поводу или просто взять данный кусок в try ... Exept end; и забыть про него? |
Сообщ.
#2
,
|
|
|
Не возвращает, а ты наверно используешь Open.
Выкини ADOQuery вообще, чтобы подобных ошибок в принципе не возникало и замени парой компонент. TAdoDataset для запросов возвращающих набор данных и TAdoCommand для остальных запросов. Борланд своим костылем ADOQuery/AdoTable/AdoStoredProc много вреда принес, аналогично для других технологий, не только АДО, поскольку эти костыли он воткнул везде. |
![]() |
Сообщ.
#3
,
|
|
не открыва (ADOQuery1.Open) а просто выполняй запрос (ADOQuery1.ExecSQL;). и тогда будет все нормально
|
Сообщ.
#4
,
|
|
|
ViktorXP спасибо , все работает
![]() Anatoly Podgoretsky благодарствую, на будущее учту, но сейчас нет времени розбираться. Добавлено Кстати, я так понимаю ошибка возникает потому что нельзя возратить никакого результат. Вопрос А нельзя ли возратить информацию которая появляется в MySQl под полученной информацией типа: "58 rows in set (0.00 sec)"? |
![]() |
Сообщ.
#5
,
|
|
Цитата kiber0net0 @ Кстати, я так понимаю ошибка возникает потому что нельзя возратить никакого результат. процедура Open отправляет данные и ждет результат. по истечению времени не дождавшись результата возвращает ошибку. ExecSQL - не ждет, она просто выполняет запрос. |