Hallo,
ich beschäftige mich gerade mit Transaktion sicheren Tabellen.
Da ich in der Doku gelesen habe das InnoDB Rollback unterstützt und die Struktur wichtig ist habe ich mich für INNODB mit Rollback beschäftig und leider noch nicht so wirklich verstanden.
In der Doku steht
START TRANSACTION;
SELECT @A:=SUM(salary) FROM table1 WHERE type=1;
UPDATE table2 SET summary=@A WHERE type=1;
COMMIT;
wenn ich dieses richti verstanden hab müsste mein Statement so aussehen
START TRANSACTION;
UPDATE tree SET rgt=rgt+2 WHERE rgt >= $RGT;
UPDATE tree SET lft=lft+2 WHERE lft > $RGT;
INSERT INTO tree (name,lft,rgt) VALUES ('Halbaffen', $RGT, $RGT +1);
COMMIT;
was passiert wenn 2 User im Intranet Daten in dieses Modell einfügen. ist die Tabelle solange gesperrt bis eine Transaktion abgeschlossen ist?
weil beide werden als MYSQL user "miarbeiter" das statement auf die DB loslassen
Ich hoffe Ihr könnt mir helfen da ich eine DB vorstellung meinem "projektmanager" morgen vorstellen muss.
Daniel
ich beschäftige mich gerade mit Transaktion sicheren Tabellen.
Da ich in der Doku gelesen habe das InnoDB Rollback unterstützt und die Struktur wichtig ist habe ich mich für INNODB mit Rollback beschäftig und leider noch nicht so wirklich verstanden.
In der Doku steht
START TRANSACTION;
SELECT @A:=SUM(salary) FROM table1 WHERE type=1;
UPDATE table2 SET summary=@A WHERE type=1;
COMMIT;
wenn ich dieses richti verstanden hab müsste mein Statement so aussehen
START TRANSACTION;
UPDATE tree SET rgt=rgt+2 WHERE rgt >= $RGT;
UPDATE tree SET lft=lft+2 WHERE lft > $RGT;
INSERT INTO tree (name,lft,rgt) VALUES ('Halbaffen', $RGT, $RGT +1);
COMMIT;
was passiert wenn 2 User im Intranet Daten in dieses Modell einfügen. ist die Tabelle solange gesperrt bis eine Transaktion abgeschlossen ist?
weil beide werden als MYSQL user "miarbeiter" das statement auf die DB loslassen
Ich hoffe Ihr könnt mir helfen da ich eine DB vorstellung meinem "projektmanager" morgen vorstellen muss.
Daniel