Schrift
[thread]11514[/thread]

MySQL abfrage

Leser: 3


<< |< 1 2 3 4 >| >> 31 Einträge, 4 Seiten
Gast Gast
 2008-03-23 20:13
#107407 #107407
Hi leute ich bin gerade dabei ein MySQL abfrage zu machen hab dafür 2 module gefunden Net::MySQL und DBD::mysql hab als erstes das Net::MySQL ausprobiert


Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
use Net::MySQL;
  
     $mysql = Net::MySQL->new(
      hostname => 'localhost',
      database => 'cdcol',
      user     => 'user',
      password => 'password'
  );


  $mysql->query("INSERT INTO cds (title, intepreter) VALUES ('Perl', 'Test')");


Es schreibt mir zwar kein Fehler her aber es geht nicht

danach hab ich probiert oben bei $mysql eine or die am schluss zu machen da passiert nicht also denke ich verbindung ist da und wenn ich unten beim inerst ein or die am ende mache schreibt er mir DIED at .... line ... genau in der zeile wo das Insert passiert.

Seht ihr da ein fehler?
vielen dank
ptk
 2008-03-23 20:58
#107409 #107409
User since
2003-11-28
3645 Artikel
ModeratorIn
[default_avatar]
Nimm lieber DBD::mysql. Dazu kannst du mehr Support bekommen.
Linuxer
 2008-03-24 02:52
#107417 #107417
User since
2006-01-27
3875 Artikel
HausmeisterIn

user image
Hi,
unabhängig davon, dass ich auch zur Nutzung von DBI und DBD::mysql rate:

"Es geht nicht" ist keine qualifizierte Fehlerbeschreibung.

Was mir aber beim Blick in die Dokumentation von Net::MySQL auffällt, ist der Abschnitt SYNOPSIS, in dem u.a. folgendes steht:

Quote
...
# INSERT example
$mysql->query(q{
INSERT INTO tablename (first, next) VALUES ('Hello', 'World')
});
printf "Affected row: %d\n", $mysql->get_affected_rows_length;
...


Du scheinst aber nach Deinem Query kein $mysql->get_affected_rows_length; zu machen, wodurch Du auch nicht das Ergebnis des Query erfährst.

Übrigens sei Dir dringend die Benutzung von "use strict;" und "use warnings;" angeraten.
meine Beiträge: I.d.R. alle Angaben ohne Gewähr und auf Linux abgestimmt!
Die Sprache heisst Perl, nicht PERL. - Bitte Crossposts als solche kenntlich machen!
Gast Gast
 2008-03-24 14:11
#107423 #107423
ok hab es jetzt mit dem $mysql->get_affected_rows_length; gemacht aber da erscheint dann nur: Affected Row:0 ... funktioniert eben leider nicht.


Jetzt habe ich mit dem DBD::mysql probiert hab es installiert bzw probiert.

habe folgendes gemacht

ppm install DBI
ppm install DBD::mysql

danach hab ich ein bsp ausprobiert aber es kommt dauernt folgende Fehlermeldung
Code: (dl )
1
2
3
4
5
6
7
 
install_driver(mysql) failed: Can't locate loadable object for module DBD::mysql
in @INC (@INC contains: D:/Programme/xampplite/perl/site/lib D:/Programme/xampp
lite/perl/lib .) at (eval 4) line 3
Compilation failed in require at (eval 4) line 3.
Perhaps a module that DBD::mysql requires hasn't been fully installed
at mysql.pl line 7


danach hab ich das packet selbst von cpan heruntergeladen und in den ordner gepackt und perl makefile.pl ausgeführt aber kommt selbe Fehlermeldung wieder...
ptk
 2008-03-24 14:29
#107424 #107424
User since
2003-11-28
3645 Artikel
ModeratorIn
[default_avatar]
Code: (dl )
Can't locate loadable object for module ...
: das ist immer ein Zeichen für eine fehlerhafte Installation. Die .dll bzw. das .so zu einem Perl-Modul konnte nicht gefunden werden. Ist das tatsächlich nach der ppm-Installation passiert? Dann wäre das ppm kaputt. Aber dein @INC sieht recht klein aus, fehlen da nicht die architekturspezifischen Verzeichnisse? Oder gibt es die bei Windows-Perl-Installationen gar nicht?
renee
 2008-03-24 15:30
#107427 #107427
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
@INC sieht in Ordnung aus. Die .dlls landen in lib/auto/... bzw. in site/lib/auto/... und werden mit diesen Verzeichnissen in @INC gefunden...
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
Gast Gast
 2008-03-24 18:32
#107430 #107430
wenn ich es manuell ausführe also mittel perl makefile.pl kommt folgender fehler

C:\Perl>perl makefile.pl
Failed to determine directory of mysql.h. Use

perl Makefile.PL --cflags=-I<dir>

to set this directory. For details see the INSTALL.html file,
section "C Compiler flags" or type

perl Makefile.PL --help


nunja da ich anfänger bin nürtzt mir diese meldung auch nicht viel und in der Install.htm steht auch nicht gerade was nützliches... da ich auf einen exteren mysql server zugreifen möchte habe ich mysql auch nicht auf meim rechner direkt installiert ... habt ihr eine idee?
Struppi
 2008-03-25 11:32
#107439 #107439
User since
2006-02-17
628 Artikel
BenutzerIn
[Homepage]
user image
Was ich auf keinen Fall machen würde, ist CPAN und ppm mischen. Unter windows ist ppm immer die bessere Wahl und es gibt auch eine Reihe anderer repositories wo du Module bekommst, die nicht bei ActiveState zu finden sind.

DBI unter ppm zu installieren ist allerdings simpel, ich hatte da bisher noch nie Probleme. Muss der mysql Treiber wirklich separat geladen werden?
Gast Gast
 2008-03-25 15:15
#107455 #107455
problem ist leider auch wenn ich es per ppm herunterlade funktioniert es leide nicht... :( weis langsam wirklich nicht mehr was machen da das Net::mysql ja leider auch nicht klappt....
GwenDragon
 2008-03-25 15:38
#107456 #107456
User since
2005-01-17
14548 Artikel
Admin1
[Homepage]
user image
xampplites Perl und Activeperl sind möglicherweise nicht kompatibel.
die Drachin, Gwendolyn


Unterschiedliche Perl-Versionen auf Windows (fast wie perlbrew) • Meine Perl-Artikel

<< |< 1 2 3 4 >| >> 31 Einträge, 4 Seiten



View all threads created 2008-03-23 20:13.