目录
介绍
在本文中,我想向您解释如何在不需要SQL依赖和服务代理的情况下监视数据库。
有许多方法可以监视数据库更改,其中一种方法是SQL依赖和服务代理,但是在本教程中,我们将不使用上述工具并使用更简单的技巧来执行此操作。首先,我必须解释SQL依赖本质上将使用触发器,我们实际上将通过这个技巧模拟类似于SQL依赖的工具。例如,我们有一个名为Shop的数据库,其中包含一个名为Product的表,我们打算自动对表进行任何更改,包括插入、编辑和删除表记录,而无需计时器控制。我们程序的Thread,gridview应该更新或所谓的Refresh。为此,我们将首先为SQL Server中Product表上的Insert操作创建一个触发器,如下所示:
请考虑为删除和更新创建触发器。在我们的触发器中,我们使用了SP(存储过程)xp_cmdshel。此存储过程由Microsoft提供,用于访问操作系统命令,并在master数据库中定义。你在里面做什么让我们使用echo命令在 C 驱动器上创建一个名为 AppTextFile 的文件。请注意,若要激活该lxp_cmdshell存储过程,必须在创建触发器命令之前在SQL Server中执行这些命令。
现在,在Visual Studio环境中,我们将使用该FileSystemWatcher类自动更新gridview。此类将监视触发器创建的文件。请注意,我们在这里只解释了gridview自动更新,使用此技巧,您可以完全监控字段和记录中的更改。
这个技巧是监视表数据的一种非常简单的方法。
https://www.codeproject.com/Tips/5341611/Monitoring-Real-time-Database-Changes-in-SQL-Serve