Hi there
Ich möchte gern wissen, warum Code1 tut, aber Code2 nicht.
Die Pointe liegt in der direkten Umsetzung von der Hash-Referenz in ein Hash.
Wenn ich das Ganze in zwei Schritten mache, also erst die Referenz empfangen und dann daraus ein Hash mache, gehen natürlich beide Codes. Aber ich möchte diesen Umweg gern weglassen.
Nun, wie mach ich das bei Code2? Ist doch eigentlich das selbe.
<Code1>
my %hash = %{$dbh->selectrow_hashref("select igid, igname, ranking from profil where igid = 1")};
</Code1>
<Code2>
my $sth = $dbh->prepare("select igid, igname, ranking from profil where igid = 1");
$sth->execute();
while (my %hash = %{$sth->fetchrow_hashref})
{
# blabla
}
</Code2>
Ihr fragt euch nun wahrscheinlich, warum ich das überhaupt in einem "eigenen" Hash haben will. Tja, sieht halt einfach schöner bzw. übersichtlicher aus. Der Code in der Folge ist oft schon genug kompliziert.
Für einen Hinweis wär ich sehr dankbar.
Wenn mir keiner helfen kann, ists jedoch auch nicht so schlimm.