【问题标题】:any way to simulate OUTPUT clause in SQl Server Compact 3.5?有什么方法可以模拟 SQl Server Compact 3.5 中的 OUTPUT 子句?
【发布时间】:2011-07-02 15:55:33
【问题描述】:

我正在实施一个电子邮件队列系统。基本思路是将电子邮件存储在sql ce Db中,然后通过Windows服务读取并发送。

假设数据库中有 200 行,我需要先获取 10 条记录,所以我需要 OUTPUT 子句,这样我就可以运行这样的东西

UPDATE MAILQUEUE Set STATUS='Fetched' where QueueID in (select top(10) QueueID from MailQueue where Status='Queued' order by QueueID asc)

**OUTPUT** deleted.*

如果这是不可能的,我还可以考虑从数据库中永久删除行并处理它们,并在发生故障时将它们存储在 FailQueue 表中。在这种情况下可以使用SqlCeTransaction类来完成Select和Delete吗????

如果有更好的方法来实现这一点,请告知。

谢谢大家

【问题讨论】:

    标签: sql .net-3.5 compact-framework sql-server-ce


    【解决方案1】:

    在单个 SqlCeTransaction 中执行 SELECT 和 UPDATE 就可以了。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-12-28
      • 1970-01-01
      • 2011-04-30
      • 1970-01-01
      • 2016-07-18
      • 1970-01-01
      • 1970-01-01
      • 2020-01-01
      相关资源
      最近更新 更多