zurück
Autor: G. Guest
Erstellt am: 25 Feb 2008 09:39

Transaktionen

Hallo zusammen, ich hoffe man kann mir bei meinem Problem helfen. Ich habe eine Prozedur geschrieben welche Inserts und Update auf einige Tabellen der Datenbank ausführen soll. Das Ganze versuche ich über Transaktionen zu lösen um sicherzustellen, dass alle Änderungen auch wirklich geschehen (drum sollte ja auch trans geben :-)). Wie auch immer. Mein Problem ist, dass - so vermute ich - nach fehlschalgen eines Befehls die Tabellen durch die Prozedur gesperrt bleiben und somit kein anderer User mehr zugreifen kann. Somit steht die WebSite. Ich weiß nun nicht genau was ich flasch mache. Prozedur ist folgendermaßen aufgebaut ( werde sie vorerst nicht posten, da sie über 1600 Zeilen code enthält - ist das zu groß?). Ich schreibe in ein Temporäre Tabelle alle Tabellen welche ich manipulieren möchte. Gehe diese dann per Cursor einzeln durch. Lese aus den Systables die Spalten der Tabellen und baue mir so die SQL Befehle zum manipulieren der Daten zusammen. (Die Tabellen werden häufig geändert drum solls Dynamisch sein - Warum ??? keine Ahnung ist aber so). Das alles klappt auch wunderbar. Die Statements werden dann per exec mit weiteren Variablen ausgeführt (um so zum beispiel die Abfragen Sprachabhängig zu machen). Nach jedem Insert, Update bzw. Delete prüfe ich die Variable @@Error und @Truncount und rufe entsprechend das Rollback für tran auf. Gibts dabei noch was zu beachten. Woran könnte es liegen, dass die Tabellen nach einem Fehler gesperrt sind. Ich hoffe mein Problem einigermasen verständlich dargestellt zu haben. Danke für die Hilfe. Grüße John

SQL



Beiträge:

TitelDatumVornameNachname
Transaktionen25.02.2008 09:39G.Guest
AW: Transaktionen19.10.2008 10:55Jürgen Auer




© Copyright 2008 ppedv AG