Marko: MySQL maximalen Wert eines Schlüssels (autoincrement) finden ?

Hallo Forum,

ich versuche nachdem in der Tabelle "testruns" ein neuer Datensatz eingegeben wurde den autoincrement Schlüssel RunID zu bekommen.
Das SQL Statement auf der Kommandozeile gitb den Wert zurück, aber in Perl wird RunID nicht ausgelesen.
Der Beispielcode:

my $Quest = $dbh->prepare("SELECT max(RunID) FROM testruns");
  $Quest->execute();
  my $Res = $Quest->fetchrow_hashref();
  my $RunID = $Res->{'RunID'};
  print("RunID: ".$RunID );

Die Ausgabe ist immer

"RunID: "

also ist $RunID nicht mit dem Wert belegt. Sieht jemand den Fehler ? Er kann nur klein sein, aber ich seh ihn einfach net.

Gruss

Marko

  1. Hi Marko

    my $Quest = $dbh->prepare("SELECT max(RunID) FROM testruns");

    Der Fehler liegt hier, du hast der Spalte keinen Namen zugewiesen,
    sie heisst nicht RunID per default weil das der Name wäre wenn
    du die Spalte RunID willst. Die Spalten mit Funktionen(max, avg...)
    kriegen andere Namen zugewiesen. Einen selbstgewählten Namen vergibst
    du mit Select max(RundID) as RunID ...

    Gruss Daniela

    1. Hallo Daniela,

      danke das wars :-)

      Gruss

      Marko