如何检测SQ​​L Server数据库中发生的任何修改?

时间:2012-08-11 09:36:01

标签: delphi sql-server-2005 sql-server-2000 tadodataset

我有一个使用TADODataSetTADOConnection连接SQL Server数据库的应用程序。

我想检测数据库中发生的任何修改。

修改=插入,更新,删除

我想知道哪个TADODataset或哪个表已被修改。

我这样做是因为我有一个可以在本地网络上运行的多用户应用程序。用户可以在表格中添加,删除或编辑记录,因此我想刷新数据集以显示新的修改。

此外,我希望这可以构建日志。

我不想使用TTime继续观看修改 我不想使用触发器

我更喜欢来自TADOConnection的消息。

我正在使用带有ADO组件的SQL Server 2005和Delphi 2007。

新修改:我在SQL Server 2000上需要它

问候。

1 个答案:

答案 0 :(得分:0)

也许不是你期望的答案,但我认为你应该评估Bold for Delphi。我的雇主Attracs在一个大型多用户应用程序中成功使用了Bold超过十年。 Bold具有许多功能,可以在应用程序增长和事情变得非常复杂时简化开发。目前Bold不支持Unicode,因此它只能用于D2007或更早版本。但我们计划在未来解决这个问题。

当其他用户对数据库进行更改时,通过自动更新gui组件来解决您的问题。

有关Bold的更多信息,请参阅boldfordelphi上的博客。