Domanda

Il mio script perl è lento ma funziona. Sto pensando di buttarlo fuori e costruire una vera applicazione DB2 con collegamenti appropriati e simili; tuttavia, nel frattempo, voglio che funzioni come segnaposto.

Ho guardato questa documentazione e menziona :

$dbh->disconnect();

Tuttavia non posso usarlo perché genera questo errore.

  

Impossibile individuare il metodo oggetto   & Quot; disconnessione " tramite il pacchetto "dbh"   (forse carica " dbh " ;?) a   ./ProgramTree.pl linea 119.

So che la mia applicazione temporanea perde e cresce perché sta aprendo ricorsivamente gli handle del database. Mi sto perdendo qualcosa di fondamentale?

È stato utile?

Soluzione

Quell'errore suona molto come se mancasse il sigillo e stai eseguendo solo dbh- > disconnect (); .


Guarda cosa succede quando un oggetto non ha un metodo:

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

Rispetto a quando si chiama quel metodo sulla parola nuda " dbh " ;:

    [~] perl -e'dbh->disconnect();'
    Can't locate object method "disconnect" via package "dbh" (perhaps you forgot to load "dbh"?) at -e line 1.
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top