我在SQL Server 2005中遇到触发器的问题,我已经创建了触发器,我测试了它手动插入行并且它以这种方式工作正常,但是我从ac#web应用程序和触发器调用存储过程不会被解雇,所以我从Web应用程序中插入相同的数据,删除该行并手动重新插入它,触发器再次以这种方式工作,但是当从Web应用程序从存储过程调用时不会。
有什么建议吗?
提前致谢。
阿尔伯特
答案 0 :(得分:0)
一般来说,您应该避免使用嵌套触发器,如果您可以完全避免使用嵌套触发器,那么一定要这样做。它们很难调试,对其他开发人员来说“不可见”(这可能导致将来出现逻辑问题),并且可能导致负载下的性能问题。
请参阅此文章:Why use triggers in Microsoft SQL Server?
避免使用嵌套触发器默认情况下,如果触发器正在更改 其他表,声明了触发器 因为这些表没有被触发。该 “允许嵌套触发器”服务器选项 将数据库设置为相反 行为。触发器在a时嵌套 触发器执行一个动作 启动另一个触发器,可以 启动另一个触发器等等。 触发器最多可嵌套32个 水平。很难遵循 嵌套触发器的逻辑和它们 会影响表现。
答案 1 :(得分:0)
而不是触发器使用Web应用程序中的直接插入语句。这样,监控和调试会更容易。