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;
}
}
Այսպիսով, անջատման մակարդակը վերահսկում է փոփոխությունների տեսանելիությունը գործարքների միջև և ազդում է փակման վարքագծի վրա։