Здравствуйте, K Sergey, Вы писали:
KS>Кто-нибудь знает можно ли получить идентификатор транзакции в контексте которой происходят текущие изменения БД?
Кратко, нет.
Можно конечно придумать изварщенный способ но вряд ли онбудет иметь практическую пользу... А зачем?
Здравствуйте, Merle, Вы писали:
M>Здравствуйте, K Sergey, Вы писали:
KS>>Кто-нибудь знает можно ли получить идентификатор транзакции в контексте которой происходят текущие изменения БД? M>Кратко, нет. M>Можно конечно придумать изварщенный способ но вряд ли онбудет иметь практическую пользу... А зачем?
С помощью триггеров организовано заполнение журнала изменений. Эти изменения потом предполагается накатывать на другой экземпляр БД, причем выборочно: что-то да, что-то нет, поэтому хочется знать какие измнения призошли в рамках одной транзакции и значит должны быть накачены только вместе.
Может есть более простое решение?
Здравствуйте, K Sergey, Вы писали:
KS>Может есть более простое решение?
Например, можно использовать стандартную репликацию или, если стандартная по каким-то причинам не подходит, придумать свою систему пометки принадлежности изменений одной транзакции...
Или вообще отказаться от транзакционной репликации и продумать просто передачу измененных данных, а не всей последовательности изменений, это как правило проще...
Здравствуйте, K Sergey, Вы писали:
KS>Привет всем!
KS>Кто-нибудь знает можно ли получить идентификатор транзакции в контексте которой происходят текущие изменения БД?
Здравствуйте, Alexandr Sulimov, Вы писали:
AS>Здравствуйте, K Sergey, Вы писали:
KS>>Привет всем!
KS>>Кто-нибудь знает можно ли получить идентификатор транзакции в контексте которой происходят текущие изменения БД?
AS>Получить код транзакции AS>
Здравствуйте, Alexandr Sulimov, Вы писали:
AS>Здравствуйте, K Sergey, Вы писали:
KS>>Привет всем!
KS>>Кто-нибудь знает можно ли получить идентификатор транзакции в контексте которой происходят текущие изменения БД?
AS>Получить код транзакции AS>
Удалось получить id транзакции. Но для каскадно выполняемых операций мы получаем разные id. Например если из приложения вызывается удаление записи, то эта операция а также операции выполняемые триггером на удалении выполняются в пределах одной транзакции. А вложенные вызовы триггеров выполняются уже в транзакциях с другим id. Как узнать что эти транзакции связаны? Коммитятся и откатываются они только вместе — проверено.