Letzte ID auslesen

Dieses Thema im Forum "Webentwicklung" wurde erstellt von Phil333, 26. Mai 2009 .

Schlagworte:
  1. 26. Mai 2009
    Moin, moin!

    Ich habe eine MySQL DB und woll aus einer Tabelle den AUTO_INCREMENT Wert auslesen.
    Das Problem ist, das in die Tabelle nicht geschrieben wird und kein Update passiert, wesshalb ich
    LAST_INSERT_ID() nicht benutzten kann.
    PHP:
    $sqlBestellID  mysql_query ( "SELECT max(ID) FROM " . $Tabelle . "" );
    $rowBestellID  mysql_fetch_row ( $sqlBestellID );
    $BestellID  $rowBestellID [ 0 ];
    liefert ebenso einen falschen Wert wie count(ID)
    weil zwischenzeitig was gelöscht wird und ich BEVOR ich etwas in die DB schreibe die ID dafür brauche.

    Ich brauche halt wirklich die zuletzt eingegebene ID ohne sonst was in die DB zu schreiben.
    Danke!
     
  2. 26. Mai 2009
    AW: Letzte ID auslesen

    Ein Kommentar auf der MySQL Seite schreibt folgendes: Ob es funktioniert weiß ich nicht...

     
  3. 26. Mai 2009
    AW: Letzte ID auslesen

    FETT!

    Danke das geht!
    Für alle die es auch brauchen - hier zum copy & pasten ^^:

    PHP:
    $Tabelle = "_NAME_DER_TABELLE_" ;   
    $sql  mysql_query ( "SELECT Auto_increment FROM information_schema.tables WHERE table_name='" . $Tabelle . "'" );
    $row  mysql_fetch_row ( $sql );
    $ID  $row [ 0 ];
     
  4. 26. Mai 2009
    AW: Letzte ID auslesen

    Ich persönlich hätte es mit einem ORDER BY id DESC LIMIT 1 probiert, aber so ist es natürlich eleganter
     
  5. 27. Mai 2009
    AW: Letzte ID auslesen

    Das wäre ja das selbe wie dass was er versucht hat mit:

    PHP:
    SELECT max ( ID FROM  ". $Tabelle .""
    Das Problem ist bloß, dass die "höchste" ID nicht zwangsläufig die nächste Increment-Zahl ist (also letzteID+1).
     
  6. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.