2012-07-25 43 views
0

我正在将一些数据从sql server复制到网络上的firebird。由于完整性,我需要使用事务,但是我正在传输大约9k行。在非交易模式下阅读开放式交易对阅读成本有一定的负面影响吗?在SQL Server上读取事务中数据的成本

+0

所有交易都会造成性能损失。你在找一些确切的数字吗? – ipavlic 2012-07-25 13:32:21

+0

这将是有趣的,如果你有任何。如果你不这样做,我也可以测试它... – Fanda 2012-07-25 13:45:21

回答

1

默认的事务隔离级别是READ COMMITTED。它会在查询时为其他人锁定表格。

MSDN上的事务隔离级别: http://msdn.microsoft.com/en-us/library/ms173763.aspx

我有关于锁定僵局偶尔奇怪的错误消息的问题。这甚至发生在stackoverflow - 看杰夫阿特伍德这篇伟大的文章。我强烈建议切换到“读取已提交的快照”,以解决错误+我的性能问题。

http://www.codinghorror.com/blog/2008/08/deadlocked.html

2

“非事务模式”根本不存在,无论您是否声明,都始终存在事务。问题在于,在隐性交易中阅读与在显式交易中阅读之间是否存在任何差异。简短的回答是不,没有差别

There 可能如果您在较高的隔离级别下使用显式事务,而不是默认的READ_COMMITTED,则会有所不同。这还取决于您是否在明确的交易中执行其他任何,但是所有这些详细信息都不能从您的帖子中的节约信息中获得。