Junior — Middle
Πώς μπορεί να ρυθμιστεί το επίπεδο απομόνωσης των συναλλαγών στη βάση δεδομένων;
sobes.tech AI
Απάντηση από AI
Στη C#, το επίπεδο απομόνωσης των συναλλαγών μπορεί να ρυθμιστεί κατά τη δημιουργία του αντικειμένου TransactionScope ή κατά τη χρήση του SqlTransaction.
Για παράδειγμα, με το TransactionScope, μπορείτε να καθορίσετε το επίπεδο απομόνωσης μέσω της παραμέτρου TransactionOptions:
using System.Transactions;
var options = new TransactionOptions
{
IsolationLevel = IsolationLevel.Serializable,
Timeout = TransactionManager.DefaultTimeout
};
using (var scope = new TransactionScope(TransactionScopeOption.Required, options))
{
// λειτουργίες βάσης δεδομένων
scope.Complete();
}
Κατά τη χρήση του SqlTransaction, το επίπεδο απομόνωσης ορίζεται στην αρχή της συναλλαγής:
using (var connection = new SqlConnection(connectionString))
{
connection.Open();
var transaction = connection.BeginTransaction(IsolationLevel.ReadCommitted);
try
{
// λειτουργίες βάσης δεδομένων
transaction.Commit();
}
catch
{
transaction.Rollback();
throw;
}
}
Έτσι, το επίπεδο απομόνωσης ελέγχει την ορατότητα των αλλαγών μεταξύ των συναλλαγών και επηρεάζει τη συμπεριφορά των κλειδώσεων.