sql >> Database >  >> RDS >> Sqlserver

SQL Server SELECT-instructies die blokkering veroorzaken

SELECT kan updates blokkeren. Een goed ontworpen datamodel en query zal slechts minimale blokkering veroorzaken en geen probleem zijn. De 'gebruikelijke' WITH NOLOCK hint is bijna altijd het verkeerde antwoord. Het juiste antwoord is om uw zoekopdracht zo af te stemmen dat deze geen enorme tabellen scant.

Als de query niet afstembaar is, moet u eerst het SNAPSHOT ISOLATION-niveau overwegen , ten tweede zou je moeten overwegen om DATABASE SNAPSHOTS te gebruiken en de laatste optie zou DIRTY READS moeten zijn (en het is beter om de isolatieniveau in plaats van de NOLOCK HINT te gebruiken). Houd er rekening mee dat dirty reads, zoals de naam duidelijk aangeeft, inconsistente gegevens zullen opleveren (bijv. uw totale blad kan onevenwichtig zijn).



  1. De pt-pg-summary Percona Toolkit voor PostgreSQL gebruiken

  2. Hoe meerdere waarden in één kolom op te slaan waar minder geheugen wordt gebruikt?

  3. Een overzicht van logische replicatie in PostgreSQL

  4. Een kringverwijzing proberen te vermijden