Veröffentlicht 12. Januar 200421 j Hallo, also ich benutze SQL Server 2000 und habe eine Frage ist es normal wenn ich auf eine Tabelle die ca. 113316 Datensätze hat einen insert oder update fahre wird die für den zeit des insert bzw. update gesperrt in anderen Worten, wenn ich sage update tabele set t=0 und sofort danach select * tabele dann wartet den select solange bis update fertig ist und es kann beim grossen Tabellen sehr lange dauern ;(
12. Januar 200421 j Hallo Du, ich denke, es ist eine generelle Sache bei Statements, womit Du die Daten veränderst (Insert, Update und Delete). Die "angefassten" Daten werden sozusagen gelockt, damit nur die aktuelle Änderung durchgeführt werden kann. Die Änderungen, die man vornimmt, muss man ja entweder speichern (Committ) oder kann diese zurück nehmen (Rollback). Ein Sicherheitsmechanismus eben. Innerhalb einer (Anmelde-)Session auf der Datenbank kann nur eine Transaktion durchgeführt werden, demnach das Statement, welches Du zuerst losgeschickt hast, das Insert/Update/Delete. Das Select-Statment wird erst verarbeitet, wenn das vorherige Statement abgearbeitet ist. Ich hoffe, Dir damit geholfen zu haben. Viele Grüsse, Gnomeline
14. Januar 200421 j Original geschrieben von 007ski Und es ist unabhängig von Datenbank spricht Oracle usw. War das ne Frage oder ne Feststellung? Hi ski! Ja Lookingverhalten ist Plattform übergreifend und gehört zu einer relationalen DB nun mal dazu. Aber es gibt diverse Szenarien die das ein wenig aushebeln. Gruss
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.