[gelöst] Autoincrement - Wert auch zur Stringverküpfung in einem anderen Feld nutzen

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

  • [gelöst] Autoincrement - Wert auch zur Stringverküpfung in einem anderen Feld nutzen

    Hallo,
    ich möchte die ID die automatisch beim Einfügen vergeben wird gleichzeit auch in ein anderes Feld eingeben.
    So etwas
    INSERT INTO
    (zeile1, zeile2)
    VALUES
    ('text', '$variable_ID')
    Wie geht das?

  • #2
    mysql_insert_id

    Kommentar


    • #3
      Hallo,

      du kannst einen Trigger schreiben, der beim Einfügen das andere Feld automatisch updatet.

      Gruß,

      Amica
      [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
      Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
      Super, danke!
      [/COLOR]

      Kommentar


      • #4
        Wie kommt der Trigger an 'text'?

        Kommentar


        • #5
          Zitat von onemorenerd Beitrag anzeigen
          Wie kommt der Trigger an 'text'?
          Gar nicht, warum sollte er auch? Der soll doch (sofern ich es richtig verstanden habe) nur das Feld `zeile2` aktualisieren.
          [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
          Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
          Super, danke!
          [/COLOR]

          Kommentar


          • #6
            Nein, er will sogar ein INSERT machen. So habe ich ihn jedenfalls verstanden.

            Kommentar


            • #7
              also ich hab folgendes gemacht

              $sql = "UPDATE
              menue
              SET
              menue_filename = '$menue_filename'
              WHERE
              id = LAST_INSERT_ID();";
              Der Wert wird auch zugeordnet, offen steht die Frage wie ich diesen Wert in die Zeile menue_filename bekomme.
              Das wird auch aktualisiert bei MYSQL_INSERT_ID kommt eine Fehlermeldung,

              Kommentar


              • #8
                Jetzt versteh ich grad gar nichts mehr.
                [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
                Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
                Super, danke!
                [/COLOR]

                Kommentar


                • #9
                  Ich auch nicht.

                  Kommentar


                  • #10
                    Ich verstehe nicht, warum man das wollen sollte … ?!
                    [FONT="Helvetica"]twitter.com/unset[/FONT]

                    Shitstorm Podcast – Wöchentliches Auskotzen

                    Kommentar


                    • #11
                      Zitat von unset Beitrag anzeigen
                      Ich verstehe nicht, warum man das wollen sollte … ?!
                      Das versteh ich auch nicht
                      Ihr habt ein Torturial durchgearbeitet, das auf den mysql_-Funktionen aufbaut?
                      Schön - etwas Geschichte kann ja nicht schaden.
                      Aber jetzt seht euch bitte php.net/pdo oder php.net/mysqli bevor ihr beginnt!

                      Kommentar


                      • #12
                        und ich verstehe nicht was ihr nicht versteht

                        bei MYSQL_INSERT_ID kommt eine Fehlermeldung
                        Klasse Idee, die Meldung geheim zu halten.

                        Kann ein Trigger die Tabelle ändern, von der er angestoßen wurde?
                        Soweit ich weiß geht das nicht unmittelbar, um infinite Rekursion auszuschließen.

                        Also, der einfachste Weg: 2 Statements!

                        INSERT INTO menue
                        (zeile1)
                        VALUES
                        ('text')
                        UPDATE
                        menue
                        SET
                        zeile2 = LAST_INSERT_ID()
                        WHERE
                        id = LAST_INSERT_ID()
                        Wir werden alle sterben

                        Kommentar


                        • #13
                          Zitat von combie Beitrag anzeigen
                          Kann ein Trigger die Tabelle ändern, von der er angestoßen wurde?
                          Jein. BEFORE INSERT schon, wenn man NEW nutzt, aber ich seh grad, dass da der Autowert noch 0 ist, also bringt es nichts. AFTER INSERT gibt es kein NEW und dann würde ein UPDATE wegen des Locks scheitern, da hast du Recht.

                          [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
                          Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
                          Super, danke!
                          [/COLOR]

                          Kommentar

                          Lädt...
                          X