Temos um aplicativo cliente que está executando algum SQL em um SQL Server 2005, como o seguinte:
BEGIN TRAN;
INSERT INTO myTable (myColumns ...) VALUES (myValues ...);
INSERT INTO myTable (myColumns ...) VALUES (myValues ...);
INSERT INTO myTable (myColumns ...) VALUES (myValues ...);
COMMIT TRAN;
É enviado por um comando de cadeia longa.
Se uma das inserções falhar, ou qualquer parte do comando falhar, o SQL Server reverterá a transação? Se não reverter, tenho que enviar um segundo comando para revertê-lo?
Posso fornecer informações específicas sobre a API e o idioma que estou usando, mas acho que o SQL Server deve responder o mesmo para qualquer idioma.