select会被DML干扰吗

发布于 2024-10-03 20:01:19 字数 562 浏览 4 评论 0原文

当使用干净读取(读取已提交)时...选择查询是否会受到另一个 DML(插入、更新、删除)查询的干扰?如果是的话,能否提供一些案例。我正在使用 SQL Server 2005。

以下查询有可能产生不正确的数据。该查询不使用任何联接,它只是根据某些特定条件从单个表中获取数据。

Select PracticeCode, AccountNo, ProcCd, Modifier , ChargeDos, Paid as Amt, CreatedDate,
       case When Paid > 0 then 'P' 
              When Paid = 0 and WrittenOff = DueAmt then 'A'
              Else 'O' 
       End as Status
     From Trn_Postings
     Where CreatedDate between @StartDateTime and @EndDateTime
                  and ManualOverride not in ('F','S','X','G','O')

When using clean read (Read committed)... Will a select query be interfered by another DML (Insert, Update, Delete) query ? If yes, can you provide some cases. I'm using SQL Server 2005.

What is the possiblity the below query will be yield incorrect data. The query does not use any joins, it just fetches data from a single table based on some creteria.

Select PracticeCode, AccountNo, ProcCd, Modifier , ChargeDos, Paid as Amt, CreatedDate,
       case When Paid > 0 then 'P' 
              When Paid = 0 and WrittenOff = DueAmt then 'A'
              Else 'O' 
       End as Status
     From Trn_Postings
     Where CreatedDate between @StartDateTime and @EndDateTime
                  and ManualOverride not in ('F','S','X','G','O')

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

两仪 2024-10-10 20:01:19

读已提交隔离级别使用行级别的共享锁来避免读取脏数据。但是,由于锁定是在行级别,因此在事务完成之前其他行可能会发生更改,从而导致不可重复读取或幻像数据。

请参阅有关 设置事务隔离级别 了解更多详细信息和此博客文章就是一个很好的例子。

Read committed isolation level uses shared locks at the row level to avoid reading dirty data. However, since the locking is at the row level, other rows may change before the transaction completes, resulting in nonrepeatable reads or phantom data.

See the Microsoft documentation on SET TRANSACTION ISOLATION LEVEL for additional details and this blog post for a good example.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文