DML在SQL Server 2016中的内存优化表中触发

时间:2018-05-27 19:07:03

标签: sql-server-2016 in-memory-tables

我有两个表:表1是基于磁盘的存储,表2是内存存储。我在表2上创建了一个DML触发器,在该触发器中,我将一条记录插入表1.是否可以?

1 个答案:

答案 0 :(得分:0)

您不能,在使用mvcc隔离的同一内存事务中,不可能通过触发器访问基于磁盘的表。

要解决此问题,您可以将基于内存的磁盘和基于表的磁盘附带的update-join保存到触发器内部基于内存的阶段表中,并使用基于内存的磁盘和基于表的磁盘之间的update-join从阶段表中插入或更新表1。一些管理员可以管理和控制,但可以正常工作。

即使在SQL 2017中,DDL Tiggers仍然无法正常工作。