WinForm查询数据库是在程序里分页好点还是在SQL Server写分页存储过程好点?
按道理讲我直接得到一个DataTable,就是一个静态数据了,代码也能再去分页,做成页码按钮。SQL存储过程那种分页一次就意味着我要查一次数据库,大家说一下,是查一次数据...
按道理讲我直接得到一个DataTable,就是一个静态数据了,代码也能再去分页,做成页码按钮。SQL存储过程那种分页一次就意味着我要查一次数据库,大家说一下,是查一次数据库得到N行数据快一点,还是从静态DataTable中得到一次数据快一点?
那如果是我说的,网上大家大秀分页代码的意义何在?仅仅是为了避免大数据库加载查询吗?
如果是这样的画我们何必去一页一页查询,有这个必要吗?100万的数据量,真的有人会一页一页浏览吗?如果仅仅是为了这样,那SQL存储过程分页就有存在意义了,如果不需要,我们为什么不一次性加载好,一页一页地显示呢? 展开
那如果是我说的,网上大家大秀分页代码的意义何在?仅仅是为了避免大数据库加载查询吗?
如果是这样的画我们何必去一页一页查询,有这个必要吗?100万的数据量,真的有人会一页一页浏览吗?如果仅仅是为了这样,那SQL存储过程分页就有存在意义了,如果不需要,我们为什么不一次性加载好,一页一页地显示呢? 展开
展开全部
查一次数据库得到N行数据快一点,还是从静态DataTable中得到一次数据快一点 --- 必然是后者快,因为直接操作内存
分页代码的意义何在 --- 哪里秀?我没看到,而且别人秀你管他作甚
仅仅是为了避免大数据库加载查询吗 --- 主要是为了加快查询速度和减少内存占用,想一想百度搜索如果把上亿数据放一页会怎样
何必去一页一页查询,有这个必要吗 --- 你说百度怎么办吧
真的有人会一页一页浏览吗 --- 即便不会,你也不必像3那样真加载百万条到内存吧
那SQL存储过程分页就有存在意义了 --- 能用当然好,但不是所有数据库都有存储过程,而且人家说分页也不一定就是数据库作数据存储
为什么不一次性加载好,一页一页地显示呢 --- 就像你说的,既然我们浏览百度基本只看前几页,那你把100万页加载到内存,浪费了网络带宽和服务器务器资源,等着老板炒鱿鱼吧
追问
也就是说看具体应用,像搜索引擎、商城这些网站或者手机商城等需要做分页,为了用户友好合理分配查询时间,也就是我们说的查询时机;如果是不为搜索大数据的目的就直接放内存里分析。那讲来讲去,做分页还是一个迫不得已的方式咯?他实际上只为解决用户友好交互的问题,对吗?
追答
再做个比喻:经典名著通常都分为多少卷/章/然后还是要分页对不对,你自己想一想就通了。主要还是我说的第3点。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |