Mirko: Perl - MySQL

Beitrag lesen

Hallo,

while (my @data = $sth->fetchrow_array)
{
  print "Spalte 1: $data[0], Spalte 2: $data[1], ...";
}
Das klingt ja schonmal sehr vielversprechend. Allerdings habe ich im Moment noch soviele andere Fehlermeldungen, daß ich noch nicht herausfinden kann, ob es läuft.

Also bei mir läuft's so ähnlich schon lange... :)

while (my $data = $sth->fetchrow_hashref) { ... }
Muss das hier nicht @data heissen?

Nein, wenn dann wäre es ein "%data" - aber hier bekommst du eine Referenz zurück. Das ist sowas ähnliches wie die Pointer in C, wenn dir das weiterhilft.
Auf den Inhalt kannst du dann mit $$data{"feldname"} zugreifen.
Oder du verwendest "my %data = %{$sth->fetchrow_hashref}" (bewirkt dasselbe wie $dataref = $sth->fetchrow_hashref; %data = %$dataref;), dann hast du einen "normalen" Hash.

Übrigens, wenn Du eine gute deutsche Dokumentation zu dem Thema kennen solltest, lass es mich bitte wissen.

Sorry, ich kenn auch nur die Man-Pages (bei ActivePerl pratischerweise als HTML dabei) und CPAN...

Ciao,
Mirko