Как я могу гарантировать, что вложенные транзакции фиксируются независимо друг от друга?

Если у меня есть хранимая процедура, которая выполняет другую хранимую процедуру несколько раз с разными аргументами, возможно ли, чтобы каждый из этих вызовов фиксировался независимо от других?

Другими словами, если первый два выполнения вложенной процедуры завершаются успешно, но третье завершается неудачно, можно ли сохранить результаты первых двух выполнений (и не откатить их назад)?

У меня есть хранимая процедура, определенная примерно так в SQL Server 2000 : В программе я использую много Pointer * = new Something; если (указатель == NULL) throw AllocationError (); У меня вопрос ...

В моем школьном проекте меня попросили создать программу, не использующую STL.
В программе я использую много

Pointer* = new Something;
if (Pointer == NULL) throw AllocationError();

. Мой вопрос касается ошибок распределения:
1. Возникает ли автоматическое исключение new при сбое выделения?
2. Если да, то как мне его поймать, если я не использую STL ( #include "exception.h )
3. достаточно ли используется тестирование NULL?

спасибо.
Я использую eclipseCDT (C ++) с MinGW в Windows 7.

11
задан Fopa Léon Constantin 29 January 2016 в 17:38
поделиться