Del via


Kontrollere databasens låseadfærd

Vigtige oplysninger

Dette indhold er arkiveret og opdateres ikke. Du kan få den nyeste dokumentation ved at gå til Nyheder og planlagte tiltag til Dynamics 365 Business Central. Du kan få vist de seneste udgivelsesplaner i Udgivelsesplaner til Dynamics 365, Power Platform og Cloud for Industry.

Aktiveret til Offentlig forhåndsversion Generel tilgængelighed
Administratorer, udviklere, marketingmedarbejdere eller analytikere automatisk 1. marts 2023 1. april 2023

Forretningsværdi

Databaselåsning er en af hovedårsagerne til ydeevneproblemer. Når AL-kode kræver færre låse, øger det systemets ydeevne for brugerne.

Funktionsdetaljer

Som standard bestemmer kørselstiden af Business Centrals automatisk de isolationsniveauer, der bruges, når der forespørges i databasen. AL-udviklere kan nu eksplicit kontrollere databaseisolationsniveauet på individuelle læsninger på en postforekomst.

En ny ReadIsolation-metode er blevet indført på postdatatypen. Metoden har følgende syntaks:

rec.ReadIsolation := IsolationLevel::<enum value>

Metoden kan også startes vha. egenskabens adgangssyntaks.

Følgende tabel beskriver de mulige IsolationLevel-værdier:

Værdi Beskrivelse
Standard Følger tabellens isolationsniveau for aflæsninger; samme adfærd som ikke at angive et IsolationLevel.
ReadCommitted Tillader læsninger kun på reserverede data, Ikke data, der er blevet ændret af andre transaktioner, men som endnu ikke er reserveret.
ReadUncommitted Tillader registreringen at læse data, der er blevet ændret af andre transaktioner, men som endnu ikke er begået (også kaldet dirty reads). En ReadUncommitted-transaktion tager ingen låse og ignorerer låse fra andre transaktioner.
RepeatableRead Sikrer, at læsninger forbliver stabile i hele den aktuelle transaktions levetid. Indtil den aktuelle transaktion er fuldført, kan posten ikke læse data, der er blevet ændret, men endnu ikke bundet af andre transaktioner, og andre transaktioner kan ikke ændre data, der er blevet læst af den aktuelle transaktion.
UpdLock Sikrer, at læsninger forbliver ensartede i hele den aktuelle transaktions levetid. Indtil den aktuelle transaktion er fuldført, kan posten ikke læse data, der er blevet ændret, men endnu ikke bundet af andre transaktioner, og andre transaktioner med samme isolationsniveau kan ikke læse data, der er blevet læst af posten.

Se også

Optag forekomstens isolationsniveau (dokumentation)