Junior — Middle
Tem experiência no uso de transações em sistemas de gestão de bases de dados?
sobes.tech IA
Resposta da IA
Sim, em C# para trabalhar com transações em bases de dados, costuma-se usar a classe TransactionScope ou as transações fornecidas pelo provedor de base de dados específico, por exemplo, SqlTransaction para SQL Server.
A transação permite agrupar várias operações na base de dados em um único conjunto, que é executado completamente ou revertido em caso de erro, garantindo a integridade dos dados.
Exemplo usando 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(); // Confirmar a transação
}
Se ocorrer uma exceção no bloco e scope.Complete() não for chamado, todas as alterações serão revertidas.