В запросе пишем в несколько таблиц. Если в первую данные записались, а при записи во вторую вылетело исключение, то запись в первую откатится?
если открыть транзакцию то конечно
то есть открываете транзакцию , все обновления в трайблок и если ошибка делаете ролбэк, если всё хорошо то коммит
Для длинного списка операций последовательность действий примерно такаяBEGIN TRY
BEGIN TRANSACTION
DO SOMETHING...
COMMIT TRANSACTION
END TRY
BEGIN CATCH
IF @@TranCount >0
ROLLBACK TRANSACTION
END CATCH
Без подтверждения или отката транзакций никаких откатов происходить не будет. Отработают инструкции до возникновения ошибки и останутся в базе.