Автор Тема: DBI connect  (Прочитано 3052 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Ivan Kolesnikov

  • Завсегдатай
  • Новичок
  • *
  • Сообщений: 39
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
DBI connect
« : 12 Апреля 2005, 14:28:50 »
Вызываю функцию

$dbi=DBI->connect($connect_str, $user, $password) or die "ERROR\\n";

Как мне проверить, или отловить ошибку, если используется неверная строка подключения, или скажем не установлен требуемый клиент, например Oracle.
Скрипт просто вываливается с ошибкой и все (скажем при строке подключения \'aaa\').

Can\'t connect(aaa  ), no database driver specified and DBI_DSN env var not set at C:\\Temp\\temp.pl line 2
 
Я конечно могу проверить регулярным выражением, что строка имеет правильный формат (DBI:XXX:XXX).
Но тогда скажем при передачи строки dbi:aaa:aaa получим другую ошибку

C:\\Temp>temp.pl
install_driver(aaa) failed: Can\'t locate DBD/aaa.pm in @INC (@INC contains: C:/P
erl/lib C:/Perl/site/lib .) at (eval 1) line 3.
Perhaps the DBD::aaa perl module hasn\'t been fully installed,
or perhaps the capitalisation of \'aaa\' isn\'t right.
Available drivers: ADO, ExampleP, Oracle, Proxy, mysql.

Кто-нибудь знает, как проверить строку подключения на правильность

Оффлайн glebushka

  • студент
  • Ветеран
  • *****
  • Сообщений: 944
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.intellectuals.ru
DBI connect
« Ответ #1 : 12 Апреля 2005, 15:15:06 »
Ivan Kolesnikov
подключайся к базе в блоке eval.
Ну к чему все это, лучше бы водки выпили...

Оффлайн Ivan Kolesnikov

  • Завсегдатай
  • Новичок
  • *
  • Сообщений: 39
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
DBI connect
« Ответ #2 : 12 Апреля 2005, 15:28:57 »
glebushka большое спасибо!

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28