Ankündigung

Einklappen
Keine Ankündigung bisher.

INSERT in zwei Tabellen und dann in die dritte Tabelle

Einklappen

Neue Werbung 2019

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

  • INSERT in zwei Tabellen und dann in die dritte Tabelle

    Hallo.

    Habe die Frage, wie gehe ich den bei N:M Beziehung in PHP vor?
    Ich möchte es ausschließen, dass die IDs vertauscht werden.
    Also nicht, dass 10 Benutzer gleichzeitig (schwierig aber möglich) die Daten senden, und werden die Adressen und PLZ vertauscht.

    also, ich habe Tabellen: User, User_has_Adresse, Adresse, Adresse_has_PLZ, Plzort

    Gibt es denn die Möglichkeit bei MySQL, anstatt jedesmal
    PHP-Code:
    mysqli_insert_id() 
    zu holen, irgendwie, alle Daten in einer Reihe zu schmeißen?
    oder liefert mir die mysqli die letzte ID, die nur von dieser Verbindung zugefügt wurde, so, dass so ein Laufzeit Problem gar nicht auftreten kann?

    Vielen Dank im Voraus!
    mfg Alexander
    PHP-Code:
    if($happy)
       
    $happy false

  • #2
    Zitat von akdes Beitrag anzeigen
    Gibt es denn die Möglichkeit bei MySQL, anstatt jedesmal
    PHP-Code:
    mysqli_insert_id() 
    zu holen, irgendwie, alle Daten in einer Reihe zu schmeißen?
    Ja, das geht so in etwa, Du kannst mehrere Insert-Befehle mit Sequencen und so weiter zusammen in einem (in Worten: 1) Statement verpacken, nennt sich writeable Common Table Expressions. Kleiner Hacken: Du mußt kurz vorher noch MySQL gegen PostgreSQL tauschen.

    oder liefert mir die mysqli die letzte ID, die nur von dieser Verbindung zugefügt wurde, so, dass so ein Laufzeit Problem gar nicht auftreten kann?
    Ja.
    PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services

    Kommentar


    • #3
      Zitat von akretschmer Beitrag anzeigen
      Kleiner Hacken: Du mußt kurz vorher noch MySQL gegen PostgreSQL tauschen.
      1. Haken (zum 'mußt' sag ich jetzt mal nichts)
      2. Wird von dir jemals eine hilfreiche Antwort kommen? Dagegen sind ja die Windows vs. Linux-Diskussionen im Heiseforum Kindergarten.
      Windows Server gehören NICHT ins Internet!

      Dildo? Dildo!

      Kommentar


      • #4
        Zitat von akdes Beitrag anzeigen
        oder liefert mir die mysqli die letzte ID, die nur von dieser Verbindung zugefügt wurde, so, dass so ein Laufzeit Problem gar nicht auftreten kann?
        Das ist natürlich Session bezogen, ansonsten wäre die Funktion ziemlich unnütz...

        Zitat von akdes Beitrag anzeigen
        Adresse, Adresse_has_PLZ, Plzort
        Das solltest du nochmal überdenken...
        Adresse zu PLZ ist eine N:1 Beziehung
        PLZ zu Ort ist eine N:M Beziehung

        Kommentar


        • #5
          Zitat von erc Beitrag anzeigen
          Das ist natürlich Session bezogen, ansonsten wäre die Funktion ziemlich unnütz...


          Das solltest du nochmal überdenken...
          Adresse zu PLZ ist eine N:1 Beziehung
          PLZ zu Ort ist eine N:M Beziehung
          Danke für dein Antwort.
          N:M ist zw. User und Adresse, da User eine Rechnungs- und Lieferadresse haben kann.
          mfg Alexander
          PHP-Code:
          if($happy)
             
          $happy false

          Kommentar

          Lädt...
          X