Hallo zusammen
Ich habe die Frage hier schon mal gestellt und leider keine Antwort bekommen, also probiere ich’s nochmals 
Ich habe mal eine generelle Frage zu MS-SQL 7.x:
Also ich habe eine Tabelle mit etwa folgendem Inhalt:
ID Ticket Status AgentID
1 xxx 0 null
2 xxx 0 null
3 xxx 1 123
4 xxx 0 null
5
Die Tabelle hat tausende von solchen Einträgen. Es greifen nun dutzende von Clients mit etwa der folgenden Update-Anweisung darauf zu:
UPDATE SET STATUS=1, Agent=[myAgentID] WHERE STATUS=0
Kann ich mir da sicher sein, dass a) jede Anweisung - solange es noch welche mit dem Status =0 hat, ausgeführt wird und b), dass keiner geschrieben wird, der nicht Status = 0 hat?
Danke und Gruss
Martin
Ich habe die Frage hier schon mal gestellt und leider keine
Antwort bekommen, also probiere ich’s nochmals 
Könnte daran liegen, dass die Frage ein wenig unverständlich ist. Ich habs zumindest schon das letzte Mal nicht wirklich verstanden.
UPDATE SET STATUS=1, Agent=[myAgentID] WHERE STATUS=0
Kann ich mir da sicher sein, dass a) jede Anweisung - solange
es noch welche mit dem Status =0 hat, ausgeführt wird und b),
dass keiner geschrieben wird, der nicht Status = 0 hat?
Was meinst du mit „jede Anweisung ausgeführt“ und „keiner geschrieben der nicht Status = 0 hat“?.
Grüße, Robert
Hallo Robert
Also ich versuchs nochmals - hoffentlich verständlicher 
Garantiert mir der SQL-Server, dass bei vielen (gleichzeitigen) Updates nichts schief geht? Ist ein Update genug schnell, dass nicht die nächste Where-Klausel des Updates noch meint die Zeile sei frei (Status)?
Danke und Gruss
Martin
Garantiert mir der SQL-Server, dass bei vielen
(gleichzeitigen) Updates nichts schief geht? Ist ein Update
genug schnell, dass nicht die nächste Where-Klausel des
Updates noch meint die Zeile sei frei (Status)?
Aso, verstehe, du meinst wenn mehrere Threads das ausführen. Ja, das ist garantiert, da brauchst dir keine Sorgen machen. Ein SQL-Befehl ist atomar in Bezug auf die für ihn relevanten Datensätze, d. h. er wird komplett ausgeführt bevor der nächste zum Zug kommt (bei Interesse für Details such dir auf http://msdn.microsoft.com etwas über Locking Mechanismen raus.)
Grüße, Robert