Почему я не могу отключить дескрипторы своей базы данных с помощью DBD :: DB2?

StackOverflow https://stackoverflow.com/questions/827917

  •  06-07-2019
  •  | 
  •  

Вопрос

Мой Perl-скрипт работает медленно, но работает. Я собираюсь выбросить его и создать настоящее приложение DB2 с правильными связками и тому подобным; тем не менее, в то же время я хочу, чтобы это работало в качестве заполнителя.

Я посмотрел эту документацию , и в ней упоминается

$dbh->disconnect();

Однако я не могу использовать его, потому что он выдает эту ошибку.

  

Не удается найти метод объекта   & Quot; разъединение & Quot; через пакет " dbh "   (возможно, загрузить " dbh " ;?) в   ./ProgramTree.pl строка 119.

Я знаю, что мое временное приложение подтекает и растет, потому что оно рекурсивно открывает дескрипторы базы данных. Я что-то упустил?

Это было полезно?

Решение

Эта ошибка звучит ужасно, как будто отсутствует символ, и вы запускаете просто dbh- > disconnect (); .

<Ч>

Посмотрите, что происходит, когда у объекта нет метода:

    [~] perl -e'my $dbh = bless {}, q/foo/; $dbh->disconnect();'
    Can't locate object method "disconnect" via package "foo" at -e line 1.

По сравнению с тем, когда вы вызываете этот метод для голого слова " dbh "

    [~] perl -e'dbh->disconnect();'
    Can't locate object method "disconnect" via package "dbh" (perhaps you forgot to load "dbh"?) at -e line 1.
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top