У меня проблема с некоторыми запросами SQL, которые заключены в транзакцию. Вот как выглядит код:
using (SqlTransaction dbTrans = conn.BeginTransaction())
{
using (SqlCommand cmd = conn.CreateCommand())
{
for(Parameters p in parameterList)
try
{
//execute insert commmand
}
catch
{
//log exception
//SQL server rolls back everything
//even though no rollback statement is present!!!
}
}
dbTrans.Commit();
}
Я пытаюсь выполнить некоторые операторы вставки внутри транзакции, но в случае неудачи все автоматически откатывается. Я знаю, что в большинстве ситуаций такое поведение требуется в моем сценарии, и не имеет значения, если несколько заявлений этого не делают. Причиной существования транзакции является повышение скорости. Я знаю о массовой вставке, но, к сожалению, я не могу использовать ее здесь, так что это то, с чем я должен работать. Не могли бы вы сказать мне, если это возможно, чтобы отключить это поведение, которое я описал?