Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Можно ли в тригере получить Transaction ID или LSN?  [new]
ErikI
Member

Откуда:
Сообщений: 162
Если можно то как?
11 авг 16, 17:28    [19530722]     Ответить | Цитировать Сообщить модератору
 Re: Можно ли в тригере получить Transaction ID или LSN?  [new]
Гавриленко Сергей Алексеевич
Member

Откуда:
Сообщений: 37254
Зачем?
11 авг 16, 17:37    [19530776]     Ответить | Цитировать Сообщить модератору
 Re: Можно ли в тригере получить Transaction ID или LSN?  [new]
msLex
Member

Откуда:
Сообщений: 9290
ErikI,

select *
from sys.dm_tran_current_transaction
11 авг 16, 17:38    [19530782]     Ответить | Цитировать Сообщить модератору
 Re: Можно ли в тригере получить Transaction ID или LSN?  [new]
invm
Member

Откуда: Москва
Сообщений: 9836
sys.dm_tran_current_transation
11 авг 16, 17:39    [19530786]     Ответить | Цитировать Сообщить модератору
 Re: Можно ли в тригере получить Transaction ID или LSN?  [new]
o-o
Guest
Гавриленко Сергей Алексеевич
Зачем?

Это веселый велосипедист с занятным агрегатом,
и он об этом знает.
Поэтому никогда и никому велосипед не покажет
(на самом деле он танк модифицирует для гонок, с оракла мигрирует, а перевод "близко к тексту" просто MUST)
11 авг 16, 17:49    [19530835]     Ответить | Цитировать Сообщить модератору
 Re: Можно ли в тригере получить Transaction ID или LSN?  [new]
ErikI
Member

Откуда:
Сообщений: 162
При старте транзакции получаю данные.
SELECT *
FROM sys.dm_tran_current_transaction AS ct
JOIN sys.dm_tran_session_transactions AS st
ON ct.transaction_id = st.transaction_id
JOIN sys.dm_tran_database_transactions AS dt
ON st.transaction_id = dt.transaction_id

Но почему то database_transaction_begin_lsn и database_transaction_last_lsn пустые. Когда они заполняются? В тригере чтоли из надо доставать?

P.S.
Не надо про танки и велосипеды, больная тема.
11 авг 16, 18:28    [19531000]     Ответить | Цитировать Сообщить модератору
 Re: Можно ли в тригере получить Transaction ID или LSN?  [new]
invm
Member

Откуда: Москва
Сообщений: 9836
ErikI
Но почему то database_transaction_begin_lsn и database_transaction_last_lsn пустые
Потому что в транзакции еще не было действий, регистрируемых в ЖТ.
11 авг 16, 18:42    [19531051]     Ответить | Цитировать Сообщить модератору
 Re: Можно ли в тригере получить Transaction ID или LSN?  [new]
iap
Member

Откуда: Москва
Сообщений: 47142
ErikI,

сдаётся мне, не надо вам "Transaction ID или LSN".
11 авг 16, 18:43    [19531056]     Ответить | Цитировать Сообщить модератору
 Re: Можно ли в тригере получить Transaction ID или LSN?  [new]
ErikI
Member

Откуда:
Сообщений: 162
Все получилось.
Я в среде тестировал, а она как то странно работало с открытой транзакцией. А lsn нужен мне был для связи с пользователем. Будет таблица begin_lsn, last_lsn, user, date Очень удобно связывать с CDC и видеть кто какие изменения делал.
12 авг 16, 08:59    [19532446]     Ответить | Цитировать Сообщить модератору
 Re: Можно ли в тригере получить Transaction ID или LSN?  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 8821
ErikI,

куулхацкер :D Надеюсь, никому не придется сопровождать этот код и админить этот сервер.
12 авг 16, 11:31    [19533226]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить