如何使用.NET 2.0从SQL Server中选择数据 - 尽可能简单

时间:2009-10-02 05:11:57

标签: ado.net .net-2.0 data-access

简单的问题:

我有一个应用程序需要向SQL Server 2005发出半打的SELECT请求并将结果写入平面文件。就是这样。

如果我可以使用.NET 3.5,我将创建一个LINQ-To-SQL模型,编写LINQ表达式并在一小时内完成。鉴于我不能使用.NET 3.0或3.5,下一个最佳方法是什么? ADO.NET DataReaders / DataSet是最好的选择,还是我忘记了其他可用的东西?

4 个答案:

答案 0 :(得分:4)

使用SqlCommand和SqlDataReader类是最好的选择。如果需要将结果写入平面文件,则应直接使用阅读器而不是使用DataSet,因为后者会在将结果写入平面文件之前将结果加载到内存中。

SqlDataReader允许您以流式方式读取数据,使您的应用程序在这种情况下更具可扩展性。

答案 1 :(得分:1)

由于Nick K在服务器故障上对我的SQL Server 2000 question做了很多帮助,bcp utility对此非常方便。

您可以编写一个批处理文件或快速脚本,用您的查询调用BCP,并将csv,sql直接转储到文本文件中!

答案 2 :(得分:0)

同意上面的Dave Van den Eynde的答案,但我会说,如果你将大量数据推送到这些文件中,并且如果你的应用程序能够支持它,那么值得一看制作一个SSIS包裹。

这可能是完全矫枉过正的,但批量导入/导出经常被忽略。

答案 3 :(得分:0)

或者,您可以避免编写代码并使用BCP.exe: http://msdn.microsoft.com/en-us/library/ms162802(SQL.90).aspx