Kovalenko Dmitry wrote:
>
> Родился вопрос. А в стандарте SQL (99) вроде как прописано понятие
> точек сохранения (SAVEPOINT).
Так точно.
> А прописано ли в нем что делать с точкой B в таком случае?
>
> 1. savepoint A;
> 2. savepoint B;
> 3. savepoint A;
> 4. в этой точке у нас savepoint B (по-стандарту) существует или нет?
Стандарт лишь говорит, что должен удалиться старый сейвпойнт А и
создаться новый с тем же именем.
> в IB savepoint "B" будет изничтожен
Судя по всему, IB неявно выполняет RELEASE SAVEPOINT A (который по
стандарту уничтожает все сейвпойнты от А до настоящего времени), в то
время как FB выполняет наше расширение: RELEASE SAVEPOINT A ONLY,
которое удаляет только данный сейвпойнт. Отсюда и разница.
Я считаю наше поведение правильным.
--
Дмитрий Еманов
Комментариев нет:
Отправить комментарий