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

  • akdes
    hat ein Thema erstellt INSERT in zwei Tabellen und dann in die dritte Tabelle.

    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!

  • akdes
    antwortet
    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.

    Einen Kommentar schreiben:


  • erc
    antwortet
    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

    Einen Kommentar schreiben:


  • trollface
    antwortet
    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.

    Einen Kommentar schreiben:


  • akretschmer
    antwortet
    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.

    Einen Kommentar schreiben:

Lädt...
X