Tipp: AUTO_INCREMENT und ODBC

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

  • Tipp: AUTO_INCREMENT und ODBC

    Hallo,

    ich habe gerade meine Frage fast zu Ende geschrieben und dann habe ich die Antwort durch Zufall erfahren :=)
    (Ich arbeite mit ODBC und C++)

    Es ist einfach interessant zu wissen, zumindest für MySQL eher weniger Erfahrene wie mich.

    Wenn man eine InnoDB MySQL Tabelle hat und für die pk's AUTO_INCREMENT setzt, ist das nicht einfach rauszufinden, wie man an den aktualliesierten Key-Wert kommt.

    Hier ist die Lösung:
    A common problem is how to get the value of an automatically generated ID from an INSERT. With ODBC, you can do something like this (assuming that auto is an AUTO_INCREMENT field):

    INSERT INTO foo (auto,text) VALUES(NULL,'text');
    SELECT LAST_INSERT_ID();

    Or, if you are just going to insert the ID into another table, you can do this:

    INSERT INTO foo (auto,text) VALUES(NULL,'text');
    INSERT INTO foo2 (id,text) VALUES(LAST_INSERT_ID(),'text');

    See section 21.2.12.3 How to Get the Unique ID for the Last Inserted Row.

    For the benefit of some ODBC applications (at least Delphi and Access), the following query can be used to find a newly inserted row:

    SELECT * FROM tbl_name WHERE auto IS NULL;

  • #2
    lol .... das machen wir doch schon immer so. oder?
    INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


    Kommentar


    • #3
      Ähm ... und du meinst, keiner ausser du kann die Doku lesen? oder warum postest du ein Ausschnitt davon hier

      Kommentar


      • #4
        Ich meine damit nicht, dass man die Doku nicht lesen kann.
        Ich habe z.B. halben Tag danach gesucht und wie gesagt mehr durch Zufall, wo ich nach etwas ganz anderem gesucht habe, gefunden.

        Die Boardsuche hat auch nichts gebracht. Wenn mann zumindest später ein ä. Problem hat, wird einem die Suche schon helfen.

        Ich weiß nicht, wie das bei den Menschen, die täglich mit php und mysql arbeiten aussieht.

        Ich arbeite im Moment nur mit C++ und ODBC und deswegen sind MySQL-spezifische features für mich meistens ein Rätsel.

        Man kann's ja nehmen wie man will. Einem hilft das vieleicht und ein andere freut sich, dass man jemand flamen kann..

        Kommentar


        • #5
          Mir war das neu


          An mich bitte keine unaufgeforderten E-Mails senden (ausser ihr seid bereit geld zu zahlen, dann gerne )

          Kommentar

          Lädt...
          X