数据库触发器是个坏主意吗?
根据我的经验,它们是邪恶的,因为它们可能导致令人惊讶的副作用,并且难以调试(特别是当一个触发器触发另一个触发器时).通常开发人员甚至不会考虑是否存在触发因素.
另一方面,似乎你必须FOO
在数据库中创建一个新的逻辑,然后在数据库中创建一个新的最简单的地方是FOO表上的插入触发器.
我们唯一一次使用触发器就是设置简单的东西ModifiedDate
.
SQL Server 触发器允许访问 两个特殊表。INSERTED
- 具有“之后”值和DELETED
“之前”值。
这些存储在哪里?它们是否存在于tempdb
或与所操作的表位于同一个数据库中?