БД

Shaitan63
Дата: 08.12.2007 20:19:29
Я хочю сделать на случий если база не найдётся то запустится ручной поисковик след. кодом
try   form2.ADOConnection1.Connected:=true except
OpenDialog1.Execute;
if form2.ADOConnection1.Connected then
begin
form2.ADOConnection1.Connected:= False;
form2.ADOConnection1.ConnectionString:= 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source='
+ OpenDialog1.FileName + ';Persist Security Info=False';
form2.ADOConnection1.LoginPrompt:= False;
form2.ADOConnection1.KeepConnection:= True;
form2.ADOQuery1.Active:=true;
form2.ADOConnection1.Connected:= True;
end;
вроде всё правельно но он не работает незнаете почему?
eNose
Дата: 08.12.2007 20:21:37
потому что 3-я строка не сработает
Альт
Дата: 08.12.2007 22:16:20
ошибку увидеть можно... хотя и так видно всякие 'form2.'... даже на глаз не хватает одного end;
Shaitan63
Дата: 09.12.2007 09:49:17
Да это не вся прога а её часть ну если хочеш, то:
try   form2.ADOConnection1.Connected:=true except
OpenDialog1.Execute;
if form2.ADOConnection1.Connected then
begin
form2.ADOConnection1.Connected:= False;
form2.ADOConnection1.ConnectionString:= 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source='
+ OpenDialog1.FileName + ';Persist Security Info=False';
form2.ADOConnection1.LoginPrompt:= False;
form2.ADOConnection1.KeepConnection:= True;
form2.ADOQuery1.Active:=true;
form2.ADOConnection1.Connected:= True;
end;
end;
Но всеровно, при запуска form2.ADOConnection1 на случай, если по старому адрессу БД небудет найденна, появляется ошибка, а должен ручной поисковик.
Альт
Дата: 09.12.2007 10:23:51
А ошибка какая? и на какой строке... вы приглядитесь к своей реализации:
1. Пытаемся соединиться (в случае провала уходим в блок обработки исключений)
2. Открываем диалог выбора аксесовского файла (уже потеряли нажатие отмены в диалоге выбора)
3. Если соединение было удачным (как это так?!)
3.1 Закрываем соединение...
3.2 Перестраиваем строку соединения
3.3 Открываем (а если опять неудачно?)

зы: вполне возможно, что исключение вы ловите только в режиме отладки под запущенной средой разработки... т.е. надо просто продолжить выполнение программы F9 или ввести EOleException в список необрабатываемых интегрированным дебагером исключений (зависит от версии среды... раздел настроек называется Language Exceptions)
Shaitan63
Дата: 09.12.2007 18:43:26
Строчку не выдаёт а пишет "не выполненна проверка подленности".
Shaitan63
Дата: 09.12.2007 18:50:30
Альт
А ошибка какая? и на какой строке... вы приглядитесь к своей реализации:
1. Пытаемся соединиться (в случае провала уходим в блок обработки исключений)
2. Открываем диалог выбора аксесовского файла (уже потеряли нажатие отмены в диалоге выбора)
3. Если соединение было удачным (как это так?!)
3.1 Закрываем соединение...
3.2 Перестраиваем строку соединения
3.3 Открываем (а если опять неудачно?)

зы: вполне возможно, что исключение вы ловите только в режиме отладки под запущенной средой разработки... т.е. надо просто продолжить выполнение программы F9 или ввести EOleException в список необрабатываемых интегрированным дебагером исключений (зависит от версии среды... раздел настроек называется Language Exceptions)

Хорошо, а какие у вас будут предложение!
Shaitan63
Дата: 09.12.2007 18:55:35
Альт
А ошибка какая? и на какой строке... вы приглядитесь к своей реализации:
1. Пытаемся соединиться (в случае провала уходим в блок обработки исключений)
2. Открываем диалог выбора аксесовского файла (уже потеряли нажатие отмены в диалоге выбора)
3. Если соединение было удачным (как это так?!)
3.1 Закрываем соединение...
3.2 Перестраиваем строку соединения
3.3 Открываем (а если опять неудачно?)

зы: вполне возможно, что исключение вы ловите только в режиме отладки под запущенной средой разработки... т.е. надо просто продолжить выполнение программы F9 или ввести EOleException в список необрабатываемых интегрированным дебагером исключений (зависит от версии среды... раздел настроек называется Language Exceptions)

Хорошо, а какие у вас будут предложение!
eNose
Дата: 09.12.2007 19:46:30
как всё оказывается запущено...

в 3-й строке "if not ..."
Shaitan63
Дата: 09.12.2007 20:11:14
eNose
как всё оказывается запущено...

в 3-й строке "if not ..."

Хватит насмихаться, я новечок.
Если поставить not, то некаких изиенений не поизайдёт.