C#/ SQL Listener告诉我是否已将一行插入表中

gre*_*reg 9 c# sql-server triggers listener

有人可以发布示例代码或告诉我如何在SQL Server数据库中插入新行时如何设置监听器来通知我(触发事件)?

我不想使用任何SQL Server消息传递或代理服务.我目前有一个文件监听器,它会在新行附加到平面文件时通知我.我想对数据库表做同样的事情.

Dam*_*ver 8

您是否正在寻找SqlDependency类,它允许您的代码注册在发生更改时得到通知?

SqlDependency 是缓存场景的理想选择,您的ASP.NET应用程序或中间层服务需要将某些信息缓存在内存中.SqlDependency允许您在数据库中的原始数据发生更改时接收通知,以便可以刷新缓存.

或者这是否属于您不允许的事情范围,这还不完全清楚?


Kyl*_*man 2

您需要在插入时执行某种数据库触发器或定期轮询数据库以查找新记录。我不推荐后一种建议,因为这可能会非常消耗性能。

除此之外,你没有给我们太多继续下去的机会。您使用什么版本的 SQL Server?你已经尝试过什么?您遇到过哪些问题?


以下是一些可能为您指明正确方向的链接:

探索 SQL Server 触发器

如何:创建并运行 CLR SQL Server 触发器

一个类似的问题提出了一种替代(更好?)的方法: Can SQL CLR triggers do this? 或者,还有更好的方法?