Junior — Middle
Heeft u ervaring met het gebruik van transacties in databasebeheersystemen?
sobes.tech AI
Antwoord van AI
Ja, in C# wordt vaak de klasse TransactionScope of transacties die door de specifieke databaseprovider worden aangeboden, bijvoorbeeld SqlTransaction voor SQL Server, gebruikt om met transacties te werken.
Een transactie stelt je in staat om meerdere bewerkingen in de database te groeperen in één geheel, dat volledig wordt uitgevoerd of bij een fout volledig wordt teruggedraaid, waardoor de integriteit van de gegevens wordt gewaarborgd.
Voorbeeld met TransactionScope:
using (var scope = new TransactionScope())
{
using (var connection = new SqlConnection(connectionString))
{
connection.Open();
var command1 = new SqlCommand("INSERT INTO Table1 ...", connection);
command1.ExecuteNonQuery();
var command2 = new SqlCommand("UPDATE Table2 ...", connection);
command2.ExecuteNonQuery();
}
scope.Complete(); // Bevestig de transactie
}
Als er een uitzondering optreedt in het blok en scope.Complete() niet wordt aangeroepen, worden alle wijzigingen teruggedraaid.