C# 某些SQL联接是否会使您的ASP.NET应用程序速度异常缓慢?

C# 某些SQL联接是否会使您的ASP.NET应用程序速度异常缓慢?,c#,asp.net,sql,sql-server-2005,join,C#,Asp.net,Sql,Sql Server 2005,Join,我说的是某些SQL连接(不是全部),它们使应用程序爬行。我曾经在我的代码中产生过这个,我认为这真的是微软的一个bug。问题是,查询在SQL Management Studio中执行得很好,但在您的应用程序中,除非查询完成,否则所有操作都会停止10秒以上。我认为这真的是一个错误 这方面的一个例子是。从一页转到另一页需要8秒钟的时间。看在上帝的份上,他们不能优化这个吗?我相信这就是这种缺陷的一种表现 有人见过它吗?有人能认出它吗?我正在尝试解决我自己的慢速查询问题,但首先要澄清这一点。我从未注意到在

我说的是某些SQL连接(不是全部),它们使应用程序爬行。我曾经在我的代码中产生过这个,我认为这真的是微软的一个bug。问题是,查询在SQL Management Studio中执行得很好,但在您的应用程序中,除非查询完成,否则所有操作都会停止10秒以上。我认为这真的是一个错误

这方面的一个例子是。从一页转到另一页需要8秒钟的时间。看在上帝的份上,他们不能优化这个吗?我相信这就是这种缺陷的一种表现


有人见过它吗?有人能认出它吗?我正在尝试解决我自己的慢速查询问题,但首先要澄清这一点。

我从未注意到在management studio中性能良好的查询在我从应用程序实时运行时无法执行。当然,有些SQL连接明显比其他SQL连接慢,但您不应该看到1秒的查询需要20秒才能执行或诸如此类的事情

不过要记住的一点是,ASP网页的运行速度无论如何都会比存储过程的执行时间稍慢。当您在management studio中运行查询时,您只是在运行查询。但是,当您从服务器请求页面时,必须打开与数据库的连接,必须执行查询,然后页面必须使用从查询中检索到的数据进行呈现,因此这会增加您可能注意到的查询执行时间的开销

您是否有一个当前的示例,其中包含您自己的代码,我们可以查看


我刚刚查看了微软的网站,回复时间真的很糟糕,我不敢相信有人真的会让这样的事情发生

我从未注意到在ManagementStudio中性能良好的查询在我从应用程序中实时运行时无法执行。当然,有些SQL连接明显比其他SQL连接慢,但您不应该看到1秒的查询需要20秒才能执行或诸如此类的事情

不过要记住的一点是,ASP网页的运行速度无论如何都会比存储过程的执行时间稍慢。当您在management studio中运行查询时,您只是在运行查询。但是,当您从服务器请求页面时,必须打开与数据库的连接,必须执行查询,然后页面必须使用从查询中检索到的数据进行呈现,因此这会增加您可能注意到的查询执行时间的开销

您是否有一个当前的示例,其中包含您自己的代码,我们可以查看


我刚刚查看了微软的网站,回复时间真的很糟糕,我不敢相信有人真的会让这样的事情发生

这实际上取决于查询和连接。连接本身,无论是什么类型,都不会影响您所指的性能。

这实际上取决于查询和连接。连接本身,无论是何种类型,都不会影响您所指的性能。

您需要阅读并理解以下内容:

目录如下:

  • 简介
    推定

  • SQL Server如何编译存储过程
    什么是存储过程?
    SQL Server如何生成查询计划
    将查询计划放入缓存
    不同设置的不同计划
    默认设置
    语句重新编译的效果
    到目前为止的故事

  • 不总是参数嗅探…
    替换变量和参数
    阻塞
    索引视图和索引计算列
    链接服务器的问题

  • 获取信息以解决参数嗅探问题
    获取必要的事实
    哪个是慢语句?
    使用Management Studio获取查询计划和参数
    直接从计划缓存获取查询计划和参数
    从跟踪获取查询计划和参数
    获取表和索引定义
    查找有关统计数据的信息

  • 如何解决参数嗅探问题的示例
    非解决方案
    最佳索引取决于输入
    动态搜索条件
    查看索引
    应用程序缓存的情况
    修复错误的SQL

  • SQL Server如何编译动态SQL
    什么是动态SQL?
    为动态SQL生成计划
    动态SQL和计划缓存
    在SSMS中运行应用程序查询
    解决动态SQL中的参数嗅探问题
    计划指南

  • 进一步阅读

  • 修订版


    • 您需要阅读并理解以下内容:

      目录如下:

      • 简介
        推定

      • SQL Server如何编译存储过程
        什么是存储过程?
        SQL Server如何生成查询计划
        将查询计划放入缓存
        不同设置的不同计划
        默认设置
        语句重新编译的效果
        到目前为止的故事

      • 不总是参数嗅探…
        替换变量和参数
        阻塞
        索引视图和索引计算列
        链接服务器的问题

      • 获取信息以解决参数嗅探问题
        获取必要的事实
        哪个是慢语句?
        使用Management Studio获取查询计划和参数
        直接从计划缓存获取查询计划和参数
        从跟踪获取查询计划和参数
        获取表和索引定义
        查找有关统计数据的信息

      • 如何解决参数嗅探问题的示例
        非-
        DBCC DROPCLEANBUFFERS 
        DBCC FREEPROCCACHE