[MySQL 4.1] Integrität von 2 oder mehreren Tabellen sicherstellen.

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

  • [MySQL 4.1] Integrität von 2 oder mehreren Tabellen sicherstellen.

    Ich habe hier folgendes Problem, wenn jemand einen Eintrag macht dann muss in zwei Tabellen jeweils ein Datensatz hinzugefügt werden (über eindeutige ID sind diese dann verbunden). Soweit so gut nun gibt es nur noch ein Problem, was passiert wenn nun mal das Skript wegen was auch immer nach der ersten Tabelle abricht oder jemand einfach das Programm zu früh beendet, in dem Fall hätte man eine unvollständige Information die einem genaugenommen gar nichts nützt.
    Ich habe schon gehört, das man für sowas Transaktionen nutzen kann allerdings habe ich für Mysql speziell für den Myisam Tabellentyp nichts gefunden.
    daniel-portal.com/games Free Games and more

  • #2
    IMHO InnoDB kann das (ab welche MySQL-Version kann ich aber leider nicht sagen) und zwar du musst das AutoCommit abschalten (SET AUTOCOMMIT = 0) und manuell COMMIT oder ROLLBACK explizit ausführen. Ansonstens kann MySQL 5.0 auch mit MyIsam Tabellen Transaktionsüberwachte Befehle abarbeiten. Mehr dazu s. http://dev.mysql.com/doc/refman/5.0/en/index.html

    Kommentar


    • #3
      Okay ich hab mir das jetzt mal angegukt, allerdings sind mir noch ein paar Sachen unklar:
      - Kann man LAST_INSERT_ID() wirklich nicht verwenden?
      - wozu ist überhaupt Rollback gedacht, wenn ich autocommit auf 0 stelle, und eine beliebige Anzahl queries mache, dann passiert doch eh erst was wenn ich am Ende die Query 'COMMIT' sende. Und nach COMMIT bringt auch ROLLBACK nix mehr die Daten sind dann geschrieben.
      daniel-portal.com/games Free Games and more

      Kommentar

      Lädt...
      X