Чтобы проверить обработку ошибок в приложении, я ищу способ разрешить фиксацию транзакции в результате ошибки.
Приложение написано на C и использует ODBC для связи с источником данных SQL Server 2017. Приложение запускает транзакцию базы данных и выполняет произвольный SQL (который я могу изменить ради теста). Затем он фиксирует транзакцию (используя ODBC SQLEndTran()
). Я хочу построить тест, который проверяет обработку ошибок при фиксации.
Существует ли простой и надежный способ позволить сбою фиксации, например, путем выполнения какого-либо конкретного сценария SQL перед фиксацией или путем изменения базы данных или настроек источника данных?
РЕДАКТИРОВАНИЕ / уточнение: что мне нужно для сбоя, так это сам коммит транзакции (в частности, SQLEndTran()
полный вызов с ошибкой). SQL до этого завершится успешно.