SQL Server 2008: нет «отпускать точку сохранения» для текущей транзакции - PullRequest
1 голос
/ 23 июня 2010

Я использую уровень абстракции базы данных PHP для работы с MySQL и SQL Server.В MySQL есть оператор «release savepoint», который SQL Server не поддерживает, и я не могу найти в T-SQL сопоставимый оператор для использования вместо него.Кто-нибудь знает способ обойти это, или можно безопасно игнорировать недостаток функциональности?

Буду признателен за любую информацию!

Приветствия

Ответы [ 3 ]

1 голос
/ 23 июня 2010

В SQL Server вам не нужно выполнять никаких операций для освобождения точки сохранения. Точки сохранения автоматически «освобождаются» при окончательном подтверждении транзакции или откате, вам не нужно промежуточно управлять ими.

0 голосов
/ 03 июля 2012

Стандартный синтаксис ANSI: SAVEPOINT, ROLLBACK TO SAVEPOINT и RELEASE SAVEPOINT.Oracle, DB / 2, MySQL, Postgres, Sybase, Informix, Interbase и Firebird используют один и тот же стандартный синтаксис.SQL Server - это чудак с другим синтаксисом и без «релиза».

Как сказал Ремус Русану, это не является строго обязательным, но может помочь базе данных лучше управлять внутренними ресурсами, если она знает, что точка сохранения небольше необходимости (это, безусловно, помогает в архитектурах с несколькими поколениями, таких как Oracle, Interbase и Firebird).

0 голосов
/ 23 июня 2010

Я не очень разбираюсь в MySQL, но это звучит немного похоже на

Save Transaction <Name> and Rollback Transaction <Name>

для частичного отката транзакции в именованную точку. См MSDN

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...