"install_driver(sql) failed"
tomy
- perl
Hallo alle zusammen,
hoffe doch ihr könnt mir (mal wieder) helfen...
ich habe ein kleines perlmodul geschrieben welches einen sql-query an eine mysql db übergibt. dieses modul nutze ich für verschiedene programme und es funktioniert auch überall... außer bei einem. da bekomm ich diese fehlermeldung:
----
install_driver(sql) failed: Can't locate DBD/sql.pm in @INC (@INC contains: D:/software/Perl/810/lib D:/software/Perl/810/site/lib . configuration programmodule) at (eval 3) line 3.
Perhaps the DBD::sql perl module hasn't been fully installed,
or perhaps the capitalisation of 'sql' isn't right.
Available drivers: ADO, CSV, DBM, ExampleP, File, Multiplex, ODBC, Proxy, Sponge, mysql.
at programmodule/db_connect.pm line 29
----
ich habsch schon mit der neuinstallation der module
-dbi
-dbi-mysql
versucht -> nichts.
komischerweis funktioniert alles, wenn ich den code in das konfigurationsscript (von diesem werden alle module aufgerufen) kopiere.
ich hoffe ihr könnt mir auch diesmal weiterhelfen.
tom
Hallo tomy,
ich habe ein kleines perlmodul geschrieben welches einen sql-query
an eine mysql db übergibt. dieses modul nutze ich für verschiedene
programme und es funktioniert auch überall... außer bei einem. da
bekomm ich diese fehlermeldung:[...]
Du gibst den falschen Datenbank-Treiber an. Der ist 'mysql', nicht
'sql'. Konkret: im Connection-String 'DBI:mysql', nicht 'DBI:sql'.
Grüße,
CK
Du gibst den falschen Datenbank-Treiber an. Der ist 'mysql', nicht
'sql'. Konkret: im Connection-String 'DBI:mysql', nicht 'DBI:sql'.
der Connection-String sieht bei mir so aus:
DBI:mysql:da_name:localhost
müsste also stimmen und wie gesagt bei anderen programmen funzt es.
bin schon so langsam ein wenig verzweifelt :-/
drotzdem danke
Halihallo tomy
müsste also stimmen und wie gesagt bei anderen programmen funzt es.
bin schon so langsam ein wenig verzweifelt :-/
Nun, du hast irgendwo einen logischen Bug im Programm. Was steht bei
dir in "programmodule/db_connect.pm line 29"? - Vielleicht setzt du
die DB-Connction-String aus Variablen zusammen, die du in diesem
speziellen Programm falsch gesetzt hast.
Oder du öffnest die Verbindung auch an einem anderen Ort und von dort
kommt der Fehler.
Gib in db_connect.pm vor Linie 29 mal deinen Connection-String aus.
Viele Grüsse
Philipp
fehler gefunden. :-)
mein kollege hat die variable in der:
DBI:mysql:da_name:localhost
steht mit "my" deklariert, also quasi privat gemacht.
trotzdem danke für euere mühe
tomy
Halihallo tomy
install_driver(sql) failed: Can't locate DBD/sql.pm in @INC (@INC contains: D:/software/Perl/810/lib D:/software/Perl/810/site/lib . configuration programmodule) at (eval 3) line 3.
Du hast auf den Driver "sql" zugegriffen, nicht auf "mysql"!
Available drivers: ADO, CSV, DBM, ExampleP, File, Multiplex, ODBC,
Proxy, Sponge, mysql.
^^^^^
mysql ist installiert!
-dbi-mysql
Das Driver-Modul für MySQL heisst DBD-MySQL und es _ist_ bei dir
installiert!
komischerweis funktioniert alles, wenn ich den code in das konfigurationsscript (von diesem werden alle module aufgerufen) kopiere.
Hä, was? - Zeig mal etwas Code...
Interessieren würde mich zumindest die Zeile, wo du die Verbindung
öffnest. Hast du dort etwas wie folgt stehen:?
DBI->connect('dbi::sql:datase=...','...','...');
das muss heissen:
DBI->connect('dbi::mysql:database=...','...','...');
^^^^^
Viele Grüsse
Philipp