powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Как обратиться к транзакции по ее имени.
12 сообщений из 12, страница 1 из 1
Как обратиться к транзакции по ее имени.
    #39822394
Pavel39
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Открываю два окна студии.

В первом пишу
BEGIN TRANSACTION T1;
SELECT @@SPID ,@@TRANCOUNT
Вижу 61, 1 (отлично транзакция создана!)

Второе окно

SELECT @@SPID ,@@TRANCOUNT
Вижу 63, 0 (Ага транзакции нет)

Пробую
ROLLBACK TRANSACTION T1;
Вижу (что вполне логично).
Запрос ROLLBACK TRANSACTION не имеет соответствующей инструкции BEGIN TRANSACTION.

Подскажите я могу завершить транзакцию по имени из другого сеанса(@@SPID)

Для чего мне это.
Суть простая, данные я пишу в базу порциями. И не всегда все хорошо(особенность данных) тогда мне надо данные удалить.
Понятно что можно сделать признак Ready и ID.
Но все же я хочу реализовать это транзакциями.
Скажем так,
Открывать сессию и писать в транзакчию с именем Т1 и потом если все хорошо комит Т1, если плохо комит ролбэк Т1.
...
Рейтинг: 0 / 0
Как обратиться к транзакции по ее имени.
    #39822399
TaPaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Pavel39,

авторОткрывать сессию и писать в транзакчию с именем Т1 и потом если все хорошо комит Т1, если плохо комит ролбэк Т1.

что мешает делать это в try begin tran commit catch rollback?

ну и ключевое слово в мануале local
...
Рейтинг: 0 / 0
Как обратиться к транзакции по ее имени.
    #39822403
msLex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Pavel39Открываю два окна студии.

В первом пишу
BEGIN TRANSACTION T1;
SELECT @@SPID ,@@TRANCOUNT
Вижу 61, 1 (отлично транзакция создана!)

Второе окно

SELECT @@SPID ,@@TRANCOUNT
Вижу 63, 0 (Ага транзакции нет)

Пробую
ROLLBACK TRANSACTION T1;
Вижу (что вполне логично).
Запрос ROLLBACK TRANSACTION не имеет соответствующей инструкции BEGIN TRANSACTION.

Подскажите я могу завершить транзакцию по имени из другого сеанса(@@SPID)

Для чего мне это.
Суть простая, данные я пишу в базу порциями. И не всегда все хорошо(особенность данных) тогда мне надо данные удалить.
Понятно что можно сделать признак Ready и ID.
Но все же я хочу реализовать это транзакциями.
Скажем так,
Открывать сессию и писать в транзакчию с именем Т1 и потом если все хорошо комит Т1, если плохо комит ролбэк Т1.

kill 61
...
Рейтинг: 0 / 0
Как обратиться к транзакции по ее имени.
    #39822409
TaPaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
msLexPavel39Открываю два окна студии.

В первом пишу
BEGIN TRANSACTION T1;
SELECT @@SPID ,@@TRANCOUNT
Вижу 61, 1 (отлично транзакция создана!)

Второе окно

SELECT @@SPID ,@@TRANCOUNT
Вижу 63, 0 (Ага транзакции нет)

Пробую
ROLLBACK TRANSACTION T1;
Вижу (что вполне логично).
Запрос ROLLBACK TRANSACTION не имеет соответствующей инструкции BEGIN TRANSACTION.

Подскажите я могу завершить транзакцию по имени из другого сеанса(@@SPID)

Для чего мне это.
Суть простая, данные я пишу в базу порциями. И не всегда все хорошо(особенность данных) тогда мне надо данные удалить.
Понятно что можно сделать признак Ready и ID.
Но все же я хочу реализовать это транзакциями.
Скажем так,
Открывать сессию и писать в транзакчию с именем Т1 и потом если все хорошо комит Т1, если плохо комит ролбэк Т1.

kill 61
а закомитить с другой сессии
live 61
...
Рейтинг: 0 / 0
Как обратиться к транзакции по ее имени.
    #39822415
Владислав Колосов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Pavel39,

два окна зачем?
...
Рейтинг: 0 / 0
Как обратиться к транзакции по ее имени.
    #39822424
Гавриленко Сергей Алексеевич
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Владислав КолосовPavel39,

два окна зачем?"Я архитектор, я так вижу" (c)
...
Рейтинг: 0 / 0
Как обратиться к транзакции по ее имени.
    #39822486
invm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Pavel39Подскажите я могу завершить транзакцию по имени из другого сеанса(@@SPID)По имени никак.

Если осталось желание решать задачу именно таким извращенным способом, то читайте про sp_bindsession
...
Рейтинг: 0 / 0
Как обратиться к транзакции по ее имени.
    #39822487
msLex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
invmPavel39Подскажите я могу завершить транзакцию по имени из другого сеанса(@@SPID)По имени никак.

Если осталось желание решать задачу именно таким извращенным способом, то читайте про sp_bindsession
Он помечен как depricated
...
Рейтинг: 0 / 0
Как обратиться к транзакции по ее имени.
    #39822726
Pavel39
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
invmчитайте про sp_bindsession
Спасибо, судя по мсдн это именно то что надо.
авторsp_bindsession использует токен привязки для привязки двух или более существующих сеансов клиента.
https://docs.microsoft.com/ru-ru/sql/relational-databases/system-stored-procedures/sp-bindsession-transact-sql?view=sql-server-2017



авторОн помечен как depricated
Это конечно плохо :(

Подскажите его(sp_bindsession) вообще убирают или есть какие то новые способы и поэтому sp_bindsession заменят?
А то не понятно насколько depricated это плохо.
...
Рейтинг: 0 / 0
Как обратиться к транзакции по ее имени.
    #39822728
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вы лучше подумайте над архитектурой своего решения, неправильно это , что вы делаете с транзакциями
...
Рейтинг: 0 / 0
Как обратиться к транзакции по ее имени.
    #39822740
invm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
msLexОн помечен как depricatedЭто не страшно.
Думается ТС гораздо раньше откажется от своей идеи.
...
Рейтинг: 0 / 0
Как обратиться к транзакции по ее имени.
    #39822791
msLex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
invmmsLexОн помечен как depricatedЭто не страшно.
Думается ТС гораздо раньше откажется от своей идеи.

Надеюсь, еще до реализации.
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Как обратиться к транзакции по ее имени.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]