Ankündigung

Einklappen
Keine Ankündigung bisher.

Nach Insert letzten Datensatz auslesen ohne neuen Query

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Nach Insert letzten Datensatz auslesen ohne neuen Query

    Hallo Forum !

    Wenn ich einen neuen Datensatz in der DB speichere, dann möchte seine ID ermitteln ohne eine neue Anfrage an die Datenbank zu stellen.

    Ich weiss das es da eine Möglichkeit gab, aber ich finde es einfach nicht mehr.

    Kann mir jemand weiterhelfen ??

    Vielen Dank im vorraus.

  • #2
    Hallo Forum !

    Ich habs es gerade gefunden:

    mysql_insert_id ();

    Trotzdem Danke !

    Kommentar


    • #3
      Zitat von PHP Manual
      Anmerkung: Der Wert der MySQL SQL Funktion LAST_INSERT_ID() liefert immer den zuletzt erzeugten AUTO_INCREMENT Wert. Dieser wird zwischen Abfragen nicht zurückgesetzt.
      Zitat von PHP Manual
      mysql_insert_id() konvertiert den Typ der Rückgabe der nativen MySQL C API Funktion mysql_insert_id() in den Typ long (als int in PHP bezeichnet). Falls Ihre AUTO_INCREMENT Spalte vom Typ BIGINT ist, ist der Wert den mysql_insert_id() liefert, nicht korrekt. Verwenden Sie in diesem Fall stattdessen die MySQL interne SQL Funktion LAST_INSERT_ID() in einer SQL-Abfrage.
      Mach das ganze lieber mit MySQL Abfragen.

      Kommentar


      • #4
        mysql_insert_id() reicht aber auch im Regelfall

        Kommentar


        • #5
          Die Funktion benutz ich auch immer und da gabs noch nie Fehler mit

          mfg
          Link

          Kommentar


          • #6
            Der Fehler tritt auch erst auf, wenn auto_increment-wert vom Typ BIGINT ist. Hab nie BIGINT fürn Primary Key gebraucht ^^ Vielleicht kommts ja mal soweit :>

            Kommentar


            • #7
              Hmm so wie ich das versteh nimmt mysql_insert_id() ja einfach den letzten gespeicherten ID Wert, oder?

              Nun hat man 2 Scripte. Beide schreiben in die DB aber in verschiedene Tabellen.
              Da kann es schon mal zu Fehlern kommen, oder ned?

              Kommentar


              • #8
                Anmerkung: Der Wert der MySQL SQL Funktion LAST_INSERT_ID() liefert immer den zuletzt erzeugten AUTO_INCREMENT Wert. Dieser wird zwischen Abfragen nicht zurückgesetzt.
                Denke aber, dass dieses "zwischen den Abfragen" gemeint ist als "zwischen den Abfragen pro Request". Wenn man nun selbst noch ne Abfrage startet, bevor man die id ausliest, ist man selbst Schuld

                Kommentar

                Lädt...
                X