是否可以监视mysql表以查找ac#application中的更改?我基本上希望在将数据插入表中时引发事件.我现在唯一能想到的是每100ms左右查询一次表.
如果应用程序和数据库服务器位于同一台计算机上,您也许可以在 MySQL 中设置一个触发器,该触发器在插入、更新后写入日志文件,然后创建一个FileSystemWatcher来监视该日志文件。当您的应用程序可以做出反应的文件更改时, FileSystemWatcher 将触发事件。
触发器可能看起来像这样:
create trigger MyTable_Monitor
after insert, update on MyTable
for each row
begin
select * from new into outfile "path/to/table.log"
end
Run Code Online (Sandbox Code Playgroud)
我在上述代码中看到的一个问题是无法附加输出文件(据我所知),因此如果在一次调用中执行多个查询(甚至不同客户端同时执行多个查询),您可能会遇到问题。欢迎提出任何改进建议。