Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   MSSQL Datenbank, Select geht nicht (https://www.delphipraxis.net/196884-mssql-datenbank-select-geht-nicht.html)

TigerLilly 29. Jun 2018 07:11

AW: MSSQL Datenbank, Select geht nicht
 
Ein kleiner Hinweis:

Ein SELECT führt unter MSSQL immer zu kurzeitigen Locks während des Lesens, je nach concurrency und Datenmenge kann das von einem row lock über page lock zu einem table lock führen + so zu einem Deadlock, bei dem dann alles steht. Das lässt sich durch den Zusatz WITH (NOLOCK) unterbinden, was den Abruf auch beschleunigt. Der Preis, den man zahlt, ist, dass Änderungen anderer (DIRTY READ bzw READ UNCOMMIED) uU in das Select einfließen können, was egal, gewünscht oder auch unerwünscht sein kann.

Hintergundinfo dazu:
https://sqlperformance.com/2014/07/t...olation-levels

Und das ist für jeden, der mit MSSQL zu tun hat auch gut:
https://blogs.sentryone.com/aaronber...abits-revival/

hoika 29. Jun 2018 07:20

AW: MSSQL Datenbank, Select geht nicht
 
Hallo,
ich mag Firebird, da ist das nicht so ;)

mkinzler 29. Jun 2018 07:57

AW: MSSQL Datenbank, Select geht nicht
 
Zitat:

Der Preis, den man zahlt, ist, dass Änderungen anderer (DIRTY READ bzw READ UNCOMMIED) uU in das Select einfließen können, was egal, gewünscht oder auch unerwünscht sein kann.
Ein DIRTY Read ist nun mal nicht "sauber". Jeder der diese Transaktionsisolation wählt sollte sich dem bewusst sein.

Zitat:

ich mag Firebird, da ist das nicht so
Da hier die Transaktionssteuerung anders funktioniert sind bei FireBird Locks meisst überflüssig. Es gab diese auch lang nicht.
Man kann diese nun explizit erzwingen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:45 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz