查询数据库时,DataSet和Output输出参数,哪个更快?

keanulaw 2009-09-08 02:03:09
我需要用存储过程根据一个ID从数据库读取几个数据,例如根据一个人的身份证读取名字、地址和电话。
通常我们有这么几种方式读取数据,最常用的可能是:
1.
使用DataAdapter读取到Dataset中
2.
使用Command执行存储过程,返回3个输出参数
3.
使用Command读取到DataSet中

我个人感觉是第2种,也就是用输出参数的方法最简单,因为我只需要一行数据,而DataSet查询似乎效率比较低。这点主要是与DataReader相比而言。

大家给点意见啊!
我现在没VS环境,自己也没法测,大家要么给个测试结果,要么给个具体的思路,以后有机会我试试看!
谢谢了!
...全文
57 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
keanulaw 2009-09-08
  • 打赏
  • 举报
回复
关键是现在在外面,这电脑没环境!
其实这种我觉得应用范围很广的,就拿CSDN来说,我要看某个用户的信息,肯定要查询数据库!这么多人,哪怕10%的人来做查询都很耗资源了!
[Quote=引用 2 楼 sp1234 的回复:]
你自己编程序测试就可以了(例如运行50次然后比较平均时间),这种问题问别人是没有必要的。

但是要记住,当你纠缠于“哪个更快”的时候,最好想想这个差别对客户值几毛钱?

因为真正关键的是你满足客户新的需求的能力,以及能够长期维护和升级产品的声誉。通常个别语句的快慢之争往往让你得不偿失。
[/Quote]
wuyi8808 2009-09-08
  • 打赏
  • 举报
回复
DataReader 一次一行地返回数据,DataSet 一次返回全部数据。用哪种方案,视你的需要而定。
平生我自如 2009-09-08
  • 打赏
  • 举报
回复
Dataset是返回数据集,当你要返回大量数据的时候用dataset最好了
  • 打赏
  • 举报
回复
你自己编程序测试就可以了(例如运行50次然后比较平均时间),这种问题问别人是没有必要的。

但是要记住,当你纠缠于“哪个更快”的时候,最好想想这个差别对客户值几毛钱?

因为真正关键的是你满足客户新的需求的能力,以及能够长期维护和升级产品的声誉。通常个别语句的快慢之争往往让你得不偿失。
bdmh 2009-09-08
  • 打赏
  • 举报
回复
如果只是返回参数,第二种

110,571

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧