C# sqldatareader 特别慢!蜗牛的速度 SQL大概只有五十多条,SQL2 大概1-200条不等 运行一次大概需要10秒 10

C#sqldatareader特别慢代码如下://///////////////SqlDataReadersdr1=SqlDal.ExecuteReader(SQL1);... C# sqldatareader 特别慢
代码如下:
/////////////////
SqlDataReader sdr1 = SqlDal.ExecuteReader(SQL1);
List<srobject> srlist;
while (sdr1.Read())
{
srobject sr= new srobject ();
// sr 取值
//构造SQL2
SqlDataReader sdr2 = SqlDal.ExecuteReader(SQL2);
while (sdr2.Read())
{
srPart vp = new srPart ();
// vp 取值

sr.PartList.Add(vp) ;
}
srlist.Add(sr);
}
/////////////////////
展开
 我来答
money0_04c351c2
推荐于2017-10-29 · TA获得超过4142个赞
知道大有可为答主
回答量:5505
采纳率:49%
帮助的人:1602万
展开全部
由于你没有提供数据库结构、SQL语句和大概的数据量,因此无法判断是否真的不正常。
建议你做几个测试,以验证是哪里的问题。
比如:
新建一个简单空表后,循环执行 插入新条目、Select该条目,1000遍,计时。
(具体多少遍,可以根据你设备的性能自行调整。)
将此数据与其他环境的执行结果进行比较,以确定是否硬件或数据库设置方面存在问题。

假如上面没问题,运行速度接近,那么你可以逐渐增加SQL语句的复杂度。
找出其中最耗时的部分,然后有针对性的加以优化。
比如:库结构是否已经优化至第三范式? 主键、外键是否正确?该做的索引做了吗?等等
追问
数量并不算大的 外循环 不超过十条数据
内循环 最大不超过200条
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式