当前位置: 首页 > 知识库问答 >
问题:

SqlDataAdapter。使用多个结果集填充非常慢

白灿
2023-03-14

在我的存储过程中,我返回13个表。在ManagementStudio中,执行proc大约需要150ms-250ms,这很好。在我的asp。net核心(c#)项目,我用该过程填充数据集,在这里,通过sqldataadapter填充数据集需要20秒甚至35秒。有谁能帮我优化一下,这样数据就可以快速填充了。下面是代码

共有1个答案

濮阳钟展
2023-03-14

首先从ADO. NET运行查询两次,看看第二次是否比第一次快得多。这消除了等待应用编译和调试架构体系加速的开销。

否则,您可以尝试使用SSM清除整个过程缓存和内存缓冲区的“从轨道对其进行核爆”方法:

DBCC DROPCLEANBUFFERS
DBCC FREEPROCCACHE

在测试查询之前这样做可以防止使用缓存的执行计划和以前的结果缓存。

 类似资料:
  • 问题内容: 只是一个简单的查询,例如在模型中使用双引用。 模式/模型 询问 我已经尝试过类似的东西 实际上,只有人口之一在工作。 那么,如何让两个人口工作呢? 问题答案: 您已经在使用以下正确的语法: 也许订单中的ObjectId不在集合中?

  • 假设我们在C++中有一个形式的函数,它应该从中读取5个字符的二进制序列,将它们转换为int=i,并将的第i个位置从切换为。 示例:为: ,因此值为5和18。 主要为空,有32个空位,因此它是:。 由于我们读取的数字是5和18,所以我们必须在中将(从0开始计数)第5个转换为和第18个转换为。 最终的看起来如下:。换句话说,我们的是一个特定类型的集合,如果中有一个数字,则“点亮”。 我想对此进行编码,

  • execute方法不仅可以执行单条查询语句,而且还可以执行多条查询语句,不同查询语句之间用分号(;)隔开。在给出例子之前,先使用如下SQL建立一个图书销售表t_booksale,并向其中插入三条记录。 建立t_booksale表 DROP TABLE IF EXISTS mydb.t_booksale; CREATE TABLE mydb.t_booksale ( id int(10)

  • 但我得到一个错误说 所以我尝试使用另一个变量的这是但是我仍然收到相同的错误消息 我如何解决这个问题?或者有什么其他方法我可以用来做这件事? 我在这里使用的两个表在字段User_Name和Transaction_Date上具有相同的值,如所示

  • 问题内容: 就像是有什么,但对?我要显示的数据是使用的关联。 我已经尝试使用过,但是在这种情况下,我必须在hibernate状态下使用它,这需要我指定using,并且每当我检索到through时,列表中的元素之间都会有空格,具体取决于。 我需要自动填充集合,因为我需要在创建时动态生成。当我使用plain时,得到以下内容: 还有其他解决方案吗? 编辑 我正在尝试实现动态表格 问题答案: 您无法在MV

  • 问题内容: 我是Java 8的新手,目前无法完全掌握Streams,是否可以使用Stream功能操作填充数组?这是我如何使用标准的for循环来实现的示例代码: 如果有可能,我将如何使用Stream?如果可能,是否方便(性能和可读性明智)? 问题答案: 在这里,您有一个解决方案,它生成数组而不是修改先前定义的变量: 如果要使用并行流,那么避免诸如修改变量(数组或对象)之类的副作用非常重要。这可能会导