如果应用程序和数据库服务器在同一台机器上,您可能可以在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 我看到上面的代码存在一个问题,即无法将outfile追加到(据我所知),因此如果在一个调用中执行多个查询(甚至是由不同客户端同时执行多个查询),则可能会遇到问题。欢迎提出改进建议。
也许可以在表中添加Insert、Update、Delete触发器,将行记录到一个有两列的新表中。1.已更改行的uid 2.更改类型Insert/Update/Delete 然后您可以访问此表格,以便查看具体哪些行被插入、更新或删除。