【发布时间】:2013-02-13 17:57:03
【问题描述】:
我有一个包含 12 个表的简单 SQL Server 数据库。每个表有 100 到 1000 行。当我的 Web 应用程序加载时,这些表会直接保存到数组中。从那时起,使用数组而不是直接访问表。每当另一个用户更改数据库中的数据时,都需要更新数组。
为此,我计划使用 ajax 每 10 秒轮询一次 PHP 脚本。该脚本检查这 12 个表中的任何一个的更改,并仅将已进行的更改而不是整个表返回给客户端计算机。
问题是,我不知道如何记录对这 12 个表的任何更改,然后以可以在 Javascript 中解释以更新数组的方式将这些更改返回到客户端计算机。
在 SQL Server 中跟踪表更改的最佳/最简单方法是什么?
也许是一种更清晰的方式来提出更广泛适用的问题 - 有哪些方法可以查询或发现 SQL Server 表随时间发生的变化?
【问题讨论】:
-
读取缓存。数据变化时使缓存失效。
-
有很多很多方法可以做到这一点,但没有一种方法一定简单到让我们想为你写。您是否有理由不想只查询表?
-
这在世界上怎么会过于本地化?因为我提供了太多关于我的具体案例的信息?想要在本地数据和服务器端数据之间创建奇偶校验而不是世界各地的程序员每天都在处理的事情?我只是在寻找一些关于使用 SQL Server 执行此操作的方法的建议——而不是为我做这件事的全部文章。类似于我得到的建议 - 通读缓存,保留最后更新的表或字段,并更改数据捕获 - 这正是我正在寻找的,许多其他人可能需要!
-
“过于本地化”?严重地?这甚至没有意义。 “没有建设性”是因为过于开放也许,或者如果它看起来过于面向 DB,但过于本地化,则离题是荒谬的。
-
我同意你之前的评论 dallin。如果它是“本地化的”,那么为什么 Microsoft 会在 SQL Server 2008 中构建不是一个而是两个特定工具来处理您正在寻找的东西?
标签: php sql-server ajax sql-server-2008