当前位置:编程学习 > C#/ASP.NET >>

大数量查询时的拥塞问题

大数量查询时的拥塞问题

报表查询实际应用中间遇到大数据量的查询,导致其他进程无法继续。
其实数据库访问层都很简单,很多人也一样是这么写的,就是不知道问题在哪里?
跟踪发现大数据量时似乎并非数据库返回慢,而是OleDbDataAdapter Fill DataSet的时候慢。一个大的查询,使得其他访问的用户的数据访问全部停滞。

下面是的代码,只是表明逻辑。我不知道是否还需要设置什么特定参数才可以避免这个问题。

rsADO = oledbConn.ExeSQLAdoRs(strSql)
OleDbDataAdapter = New Data.OleDb.OleDbDataAdapter
OleDbDataAdapter.Fill(Dataset, rsADO, "report") --------------------编程问答-------------------- 加大数据库的连接数目 --------------------编程问答-------------------- 陪同学习 --------------------编程问答-------------------- 用dataReader,是 面向连接的,用一条取一条
你用dataset是存放内存中的,如果你数据量大,会把内存塞爆掉的,当然系统就卡死了 --------------------编程问答--------------------
引用 3 楼 zhouyanfss 的回复:
用dataReader,是 面向连接的,用一条取一条
你用dataset是存放内存中的,如果你数据量大,会把内存塞爆掉的,当然系统就卡死了


顶 --------------------编程问答-------------------- 不要把数据fill在dataset了,用sqldataread吧
补充:.NET技术 ,  VB.NET
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,