在数据库表中查找新记录

时间:2011-12-14 07:39:38

标签: sql-server database c#-4.0 data-structures

我的Statistic表包含这些字段Id UserId DateStamp Data 数据库中还有User表,其中包含CreditsLeft(int)字段。我需要创建一个函数(让我们命名为FindNewRecordsAndUpdate),它将从我的应用程序每10分钟读取一次Statistic表,并根据找到的新CreditLeft个记录的数量减少Statistic字段指定用户。 我主要担心的是,下次我如何在FindNewRecordsAndUpdate字段中查找新记录并跳过已计算的记录时执行Statistic功能?我可以在Statistic中添加Counted(bool)字段,并为已经“使用过”的记录设置True但是也许有更好的解决方案withotu添加新字段?

1 个答案:

答案 0 :(得分:0)

至少3个其他选项:

  1. 使用trigger。因此,当行插入统计表时,余额是用户自动更新

  2. 根据需要对统计表执行aggregate以获取SUM(数据)

  3. 使用indexed view在第2点“预先计算”SUM

  4. 就个人而言,我会选择第2点(以及第3点,具体取决于查询频率),以避免在User表中使用非规范化数据。