![]() |
|
|
![]()
|
|
| nomadminded |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 10 Регистрация: 28.12.2006 Репутация: нет Всего: нет |
доброго времени суток. помогите пожалуйста, никак не могу разобраться.
пробую установить асинхронное соединение с MySQL из delphi через ADODB библиотеку (ADOConnection.ConnectOptions:=coAsyncConnect; ADOCommand1.ExecuteOptions:=[eoAsyncExecute];) посылаю на сервер большой SQL (INSERT) с помощью ADOCommand.Execute и продолжаю работать, пока он там выполняется. как мне узнать, что он закончил выполнение? каким образом можно это проверить? спасибо заранее. |
|||
|
||||
| Mephisto |
|
|||
![]() Волкъ ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1818 Регистрация: 27.8.2003 Где: Питер Репутация: нет Всего: 34 |
А у тебя блокирутся таблица для чтения при вставке? Если нет, то думаю, никак.
|
|||
|
||||
| drkot |
|
|||
![]() Ищущий ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1042 Регистрация: 5.5.2006 Репутация: нет Всего: 8 |
можно попробовать запросить запись по ключевому полю через тот же command. Если запись есть то запрос соответственно завершился.
Есть еще такое понятие как список транзакций на сервере, по ним наверно можно. Но я с таким не работал. -------------------- Ошибка не становится истиной по причине широкого распространения, как и Истина не становится Ошибкой из-за того, что никто её не видит. |
|||
|
||||
| SergeBS |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1111 Регистрация: 10.6.2005 Где: Владимир Репутация: 11 Всего: 22 |
Mephisto,
drkot, ну что вы, право... nomadminded, ADOCommand - F1 - свойство States. А у более других есть еще и events на разные события такого духа. |
|||
|
||||
| nomadminded |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 10 Регистрация: 28.12.2006 Репутация: нет Всего: нет |
re: SergeBS
со states не очень понимаю как работать, не могли бы вы коротенький примерчик набросать? |
|||
|
||||
| SergeBS |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1111 Регистрация: 10.6.2005 Где: Владимир Репутация: 11 Всего: 22 |
nomadminded,
Ну нахал... В доке же все прозрачно описано. Навскидку:
"Hello, world" написать не пробовал? |
|||
|
||||
| drkot |
|
|||
![]() Ищущий ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1042 Регистрация: 5.5.2006 Репутация: нет Всего: 8 |
SergeBS, ну так это позволяет просто контролировать есть транзакция на сервере или нет.
Их же десяток в очереди висеть может. Как я понимаю надо определить состояние конкретной. -------------------- Ошибка не становится истиной по причине широкого распространения, как и Истина не становится Ошибкой из-за того, что никто её не видит. |
|||
|
||||
| nomadminded |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 10 Регистрация: 28.12.2006 Репутация: нет Всего: нет |
re:SergeBS,
такое уже давно пробовала: while form1.ADOCommand1.States = stExecuting do; выдает ошибку [Error] Unit1.pas(259): E2008 Incompatible types и даже не компилится. |
|||
|
||||
| nomadminded |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 10 Регистрация: 28.12.2006 Репутация: нет Всего: нет |
все, спасибо, разобралась.
|
|||
|
||||
| SergeBS |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1111 Регистрация: 10.6.2005 Где: Владимир Репутация: 11 Всего: 22 |
nomadminded,
Осталось для завершения: 1. Показать решение. 2. Закрыть тему (галочку поставить). |
|||
|
||||
| drkot |
|
|||
![]() Ищущий ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1042 Регистрация: 5.5.2006 Репутация: нет Всего: 8 |
SergeBS, а зачем? Он то уже разобрался.
Теперь только при возникновении очередных проблем прибежит. -------------------- Ошибка не становится истиной по причине широкого распространения, как и Истина не становится Ошибкой из-за того, что никто её не видит. |
|||
|
||||
| nomadminded |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 10 Регистрация: 28.12.2006 Репутация: нет Всего: нет |
re:SergeBS,
решение на самом деле легкое. но вот где-то у меня в этом коде образуется мемлик..
не могу понять где может кто что подскажет? пс. насчет галочки - сорри, я тут новенькая. как разберусь окончательно - влеплю обязательно. Это сообщение отредактировал(а) nomadminded - 11.1.2007, 19:09 |
|||
|
||||
| SergeBS |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1111 Регистрация: 10.6.2005 Где: Владимир Репутация: 11 Всего: 22 |
nomadminded,
Что такое мемлик? просто не понял. |
|||
|
||||
| nomadminded |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 10 Регистрация: 28.12.2006 Репутация: нет Всего: нет |
сорри, memory leak.
обнаружила, что он образуется при
при отсутствии асинхронности мемлика нет.. any ideas? Это сообщение отредактировал(а) nomadminded - 11.1.2007, 20:01 |
|||
|
||||
| SergeBS |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1111 Регистрация: 10.6.2005 Где: Владимир Репутация: 11 Всего: 22 |
nomadminded,
Нда. Неприятно. Подробнее изложи, какая версия Delphi и стоят ли updates, версия MDAC, чем утечка обнаружена. Навскидку - тут может повлиять ADOcommand.Close после выполнения. Но это так, совсем навскидку... |
|||
|
||||
![]()
|
| Правила форума "Delphi: Базы данных и репортинг" | |
|
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами Обязательно указание: 1. Базы данных (Paradox, Oracle и т.п.) 2. Способа доступа (ADO, BDE и т.д.)
FAQ раздела лежит здесь! Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович. |
| 1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |