gpt4 book ai didi

.net - SqlDataReader 性能缓慢

转载 作者:行者123 更新时间:2023-12-02 09:34:02 24 4
gpt4 key购买 nike

我在 MSSMS 中执行了约 2 秒的查询(返回 25K 行)

.NET (sqlReader) 中使用的相同查询执行几分钟!

我也尝试过只执行阅读器

(注释了 while 循环中的所有代码,只留下 reader.Read() ) - 仍然相同!

知道发生了什么吗?

<小时/>

我不是 DBA,也无权使用 Profiler - 将询问我的 DBA 并让所有人知道。

与此同时,我注意到在向我所说的 SP 添加“WITH RECOMPILE”参数后,性能得到了显着提升

所以,从我的角度来看,执行计划似乎就是这种情况......你觉得怎么样?

[编辑]我还检查了从 QA 和 .NET 执行以下查询

select @@options

我的理解是它将为两种环境返回相同的值。(如果没有不同,将使用 ex.plans)我说得对吗?

[编辑2]我读到(来自 http://www.sqldev.net/misc/fn_setopts.htm )QA 中的 ARITHABOIRT=ON (在 .NET 中它是关闭的)

有人知道如何为每个 .NET 连接强制 ARITHABOIRT=ON 吗?

最佳答案

我会在 SQL Server Profiler 中设置跟踪,以查看从 .NET 代码连接时连接使用哪些 SET 选项设置,以及 SSMS 中使用哪些设置。通过 SET 选项设置,我的意思是

ARITHABORT
ANSI_NULLS
CONCAT_NULL_YIELDS_NULL
//etc

看看MSDN选项表

我以前见过这个问题,其中选项不同(在这种情况下为 ARITHABORT)并且性能差异巨大。

关于.net - SqlDataReader 性能缓慢,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/663050/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com