Wenn ich in adodb transaktionen benutze, was über die Methoden StartTrans() und completeTrans() funktioniert, sind dann auch gleichzeitig die Tabellen innerhalb der Transkation für das schreiben gelockt? Hintergrund ist das Problem wenn mehrere Inserts in verschieden Tabellen wertabhänging sind (z.b. die auto increment id der ersten Tabelle wird für andere Inserts in der gleichen Transaktion benutzt.
Bei mir ist das Problem ich möchte eine Transaktion starten und die entsprechenden Tabellen für das Schreiben locken. Über die nextId() methode möchte ich jetzt die nächste auto increment id ermitteln um diese für andere Inserts und speichern von Bildern zu benutzen. (hier muss ich sagen das ich erst die Bilder im Filesystem speichern will und dann die mysql Inserts; deshalb als erstes die nächste ID ermitteln um die bilder entsprechend zu benennen). Wie die nextId() Methode fkt check ich auch noch nicht. Im manuell steht wiederrum man bräuchte eine Sequenz (Woher nehmen, .... )
Die Frage ist jetzt bedeutet Transaktion in adodb gleichzeitig das die Tabellen gelockt sind oder muss man enstprechend manuell erst ein lock setzen und dieses dann wieder aufheben. Soweit ich sehen kann gibts keine enstprechende Methoden dafür (MySql driver).
Im Mysql Manual steht sowas wie "LOCK READ wird generell bei der emulation von transaktionen benutzt". Ob das adodb auch so macht?
ähm ... evtl wäre der thread auch in der mysql kat besser aufgehoben![Roll Eyes (Sarcastic)](https://www.php-resource.de/forum/core/images/smilies/rolleyes.gif)
Bei mir ist das Problem ich möchte eine Transaktion starten und die entsprechenden Tabellen für das Schreiben locken. Über die nextId() methode möchte ich jetzt die nächste auto increment id ermitteln um diese für andere Inserts und speichern von Bildern zu benutzen. (hier muss ich sagen das ich erst die Bilder im Filesystem speichern will und dann die mysql Inserts; deshalb als erstes die nächste ID ermitteln um die bilder entsprechend zu benennen). Wie die nextId() Methode fkt check ich auch noch nicht. Im manuell steht wiederrum man bräuchte eine Sequenz (Woher nehmen, .... )
Die Frage ist jetzt bedeutet Transaktion in adodb gleichzeitig das die Tabellen gelockt sind oder muss man enstprechend manuell erst ein lock setzen und dieses dann wieder aufheben. Soweit ich sehen kann gibts keine enstprechende Methoden dafür (MySql driver).
Im Mysql Manual steht sowas wie "LOCK READ wird generell bei der emulation von transaktionen benutzt". Ob das adodb auch so macht?
ähm ... evtl wäre der thread auch in der mysql kat besser aufgehoben
![Roll Eyes (Sarcastic)](https://www.php-resource.de/forum/core/images/smilies/rolleyes.gif)
Ok das mit der nextId() hat sich erledigt das bezieht sich auf die Sequenz nicht auf die auto increment id - da kann man selber eine methode hinzufügen
Kommentar