![]() |
|
![]() ![]() ![]() |
|
malor |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 632 Регистрация: 17.11.2006 Репутация: нет Всего: нет |
Вставляете в FormShow() строку
ADOConnection.Connected := true обертываете ее в блок try-catch и если соединение прошло успешно, то затем прописываете свойствам Active всех своих Query-элементов значение true?
Зачем в строке подключения указывается пароль, ведь он уже прописан в ODBC-источнике данных? P.S. Хроники ADO: Проверка соединения с бд через ADO, Как проверить есть ли соединение Delphi 7 + MySQL 5.X + Direct Access Components, как/чем отловить Connection Lost Выдает ошибку при подключении к базе Соединить Delphi с MS SQL Connection strings for MySQL Начинаю работать с ADO Проверка существования MS SQL сервера |
|||
|
||||
Данкинг |
|
|||
![]() Yersinia pestis ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 8302 Регистрация: 7.11.2006 Где: მოსკოვი Репутация: 35 Всего: 130 |
Вопрос-то конкретно в чём?
Добавлено через 22 секунды
Ты про какую СУБД? -------------------- There's nothing left but silent epitaphs. |
|||
|
||||
malor |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 632 Регистрация: 17.11.2006 Репутация: нет Всего: нет |
Д>>Вопрос-то конкретно в чём?
Может что-то забыл упомянуть, что желательно делать при подключениях. Д>>Ты про какую СУБД? Про MySQL 5.5.17. |
|||
|
||||
Antimol |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 118 Регистрация: 28.7.2007 Где: Украина, Киев Репутация: 4 Всего: 4 |
Вот тут неплохо описано Подключение к MySQL с помощью Delphi
Правда используются компоненты ZeosLib. Я не следил актуальность, но последняя версия кажется для Delphi 2010 Я сейчас использую компоненты UniDac. Это что касается используемых компонет, а при использовании ОДБЦ нужно настраивать подключение, много мороки одним словом. Наверняка с ОДБЦ использует свой механизм, а АДО свой, и для подтверждения личности нужно вводить логин/пароль и тут и там. Это сообщение отредактировал(а) Antimol - 14.11.2011, 15:00 --------------------
Лучшее спасибо это "+" к репутации. Мой блог: ИНФОРМАТИЗАЦИЯ, и mirsovetov.net. Написание программ, исправление ошибок, статьи.... |
|||
|
||||
Данкинг |
|
|||
![]() Yersinia pestis ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 8302 Регистрация: 7.11.2006 Где: მოსკოვი Репутация: 35 Всего: 130 |
malor, ну так что мешает попробовать подключение на практике-то? Заодно и выяснишь, что забыл.
-------------------- There's nothing left but silent epitaphs. |
|||
|
||||
malor |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 632 Регистрация: 17.11.2006 Репутация: нет Всего: нет |
Отключил в службах MySQL и запустил прогу:
![]()
|
|||
|
||||
superVad |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 735 Регистрация: 6.4.2006 Где: Черкассы, Украина Репутация: 3 Всего: 15 |
malor, какой вопрос?
|
|||
|
||||
malor |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 632 Регистрация: 17.11.2006 Репутация: нет Всего: нет |
Допустим у вас на форме несколько гридов, получающих в себя данные из ADOQuery-компонентов. При старте программы вы сделали
ADOConnection.Connected := true и пользователь начал ей пользоваться. Спустя несколько часов СУБД стала по какой-либо причине недоступной. Программа продолжает быть открытой у пользователя на компе. В некий момент происходит обновление данных в гриде: ADOQuery элемент выставляет свое свойство Active равным true. Возникает эксепшен. Каков правильный подход? Перед выполнением каждых строк вида ADOQuery.Active := true ADOQuery.ExecSQL делать присвоение (обернутое в try-except) ADOConnection.Connected := true; ? |
|||
|
||||
superVad |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 735 Регистрация: 6.4.2006 Где: Черкассы, Украина Репутация: 3 Всего: 15 |
malor, как вариант для ADOConnection в событии onDisconnect выдавать сообщение и закрывать программу. Перед обычным выходом присваивать этому событию nil.
Надо проверить конечно - сработает ли. |
|||
|
||||
malor |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 632 Регистрация: 17.11.2006 Репутация: нет Всего: нет |
Останавливал в службах MySQL сервер, но в процедуру
procedure TDataManagerModule.ADOConnectionManagerDisconnect(Connection: TADOConnection; var EventStatus: TEventStatus); прога не заходила... Пост про дисконнекты: Delphi 7 + MySQL 5.X + Direct Access Components, как/чем отловить Connection Lost |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Delphi: Базы данных и репортинг" | |
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами Обязательно указание: 1. Базы данных (Paradox, Oracle и т.п.) 2. Способа доступа (ADO, BDE и т.д.)
FAQ раздела лежит здесь! Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |