Триггеры DML в оптимизированной для памяти таблице в SQL Server 2016
У меня есть две таблицы: таблица 1 - это дисковое хранилище, а таблица 2 - в памяти. Я создаю триггер DML для таблицы 2 и в этот триггер вставляю запись в таблицу 1. Будет ли это возможно?
0 ответов
Вы не можете, это невозможно в одной и той же транзакции в памяти, используя изоляцию mvcc для доступа к дисковой таблице через триггер.
Чтобы обойти это, вы можете сохранить в таблице этапов на основе памяти внутри триггера и вставить или обновить таблицу 1 из таблицы этапов, используя update-join между диском на основе памяти и диском на основе таблицы, хотя он поставляется с некоторыми администраторами для управлять и контролировать, но работает.
DDL Tiggers по-прежнему не работает даже в SQL 2017.