求教C#处理sql大量数据的高效率方法

如题所述

我来扔个砖,希望能引出玉来。我只是说一下大量数据查询的问题。

1、你要给表建立索引,这很重要。让你们的DBA优化。

2、有些表结构可能要优化。特别是联表查太多的情况,子查太多的情况,会非常烦人。

3、可以考虑用多线程,把表加载到内存中来操作。写段伪代码,望高手能出来指点更多。

//你的主调用线程。我就用控制台了
Main()
{
   //10万一查
   string str1 = @"select ....  from xxx where id >1 and and id < 100000";
   string str2 = @"select ....  from xxx where id >100000 and and id < 200000";
   Task.Factory.StartNew(new Action(() =>
    {
        ThreadQuery(str1);
    }));
    Task.Factory.StartNew(new Action(() =>
    {
        ThreadQuery(str2);
    }));
}

然后你就写个ThreadQuery()方法来查询sql

void ThreadQuery(string str)
{
    //sql的查询操作,代码网上好多
    //查出来的结果,你随便放在内存对象里。
}

温馨提示:答案为网友推荐,仅供参考
相似回答