使用SQLDataReader与使用SQL Server> = 2005的实现IDatareader的阅读器相比,有什么优势?通过实现IDatareader的阅读器使用SQLDataReader的优点?
SQLDatareader是否具有更多功能可供选择,还是使用SQLDatareader进行性能改进?
任何讨论这个问题的文章将不胜感激。
谢谢!
Chris
使用SQLDataReader与使用SQL Server> = 2005的实现IDatareader的阅读器相比,有什么优势?通过实现IDatareader的阅读器使用SQLDataReader的优点?
SQLDatareader是否具有更多功能可供选择,还是使用SQLDatareader进行性能改进?
任何讨论这个问题的文章将不胜感激。
谢谢!
Chris
,首先请允许我纠正你的误解:如果您使用的SQL Server不是每一个的IDataReader将能够从您的MS SQL Server
读取数据在.NET环境中(你的问题所适用的我承担到)有两个具体类实现可以访问SQL Server的IDataReader。一个是SQLDataReader,另一个是OleDbDataReader。 OleDbDataReader实际上依赖于OleDb protocol,它基本上是一个RDBMS通信协议。在您的代码中使用IDataReader将(或多或少)确保您可以替换它后面的具体数据注册器(例如,让您能够切换数据库供应商,而不是我认识任何成功完成该任务的人)。
对于acessing SQL Server中,专门SqlDataReader的更快通过根据本source 115%,因为它使用本地SQL服务器协议(命名管道/ TCP/IP)。它还支持特殊的SQL Server功能,如MARS。
.HasRows属性是我能想到的唯一一个。 虽然这并不是必要的。
谢谢,约翰内斯。为什么SQLDataReader应该更快? – GernBlandston 2009-10-16 08:55:32
我已更新我的帖子,请参阅上文。不要犹豫,将其标记为答案:-) – 2009-10-16 12:46:51