Condividi tramite


Controllare il comportamento di blocco del database

Importante

Questo contenuto è archiviato e non viene aggiornato. Per la documentazione più recente, vai a Novità e funzionalità pianificate per Dynamics 365 Business Central. Per i piani di rilascio più recenti, vai a Piani di rilascio di Dynamics 365, Power Platform e Cloud per le soluzioni di settore.

Abilitata per Anteprima pubblica Disponibilità generale
Amministratori, autori, responsabili del marketing o analisti, automaticamente 1 mar. 2023 1 apr. 2023

Valore aziendale

Il blocco del database è una delle cause principali dei problemi in ambito delle prestazioni. Quando il codice AL accetta meno blocchi, aumenta le prestazioni del sistema per gli utenti.

Dettagli sulla funzionalità

Per impostazione predefinita, il runtime di Business Central determina automaticamente i livelli di isolamento usati durante l'esecuzione di query sul database. Gli sviluppatori AL ora possono controllare in modo esplicito il livello di isolamento del database sulle singole letture di un'istanza di record.

Sul tipo di dati del record è stato introdotto un nuovo metodo ReadIsolation. Il metodo ha la seguente sintassi:

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

Il metodo può anche essere richiamato usando la sintassi di accesso alle proprietà.

La tabella seguente descrive i possibili valori IsolationLevel:

Valore Descrizione
Default Segue il livello di isolamento della tabella per le letture. Comportamento analogo a quando non si imposta un IsolationLevel.
ReadCommitted Consente le letture solo sui dati sottoposti a commit, non sui dati modificati da altre transazioni ma non ancora sottoposti a commit.
ReadUncommitted Consente al record di leggere i dati modificati da altre transazioni ma non ancora sottoposti a commit (letture dirty). Una transazione ReadUncommitted non accetta blocchi e ignora i blocchi da altre transazioni.
RepeatableRead Assicura che le letture rimangano stabili per tutta la durata della transazione corrente. Fino al completamento della transazione corrente, il record non può leggere i dati modificati ma non ancora sottoposti a commit da altre transazioni e le altre transazioni non possono modificare i dati letti dalla transazione corrente.
UpdLock Assicura che le letture rimangano coerenti per tutta la durata della transazione corrente. Fino al completamento della transazione corrente, il record non può leggere i dati modificati ma non ancora sottoposti a commit da altre transazioni e le altre transazioni con identico livello di isolamento non possono modificare i dati letti dal record.

Vedi anche

Livello di isolamento dell'istanza del record (documenti)