目前,我从SQL serve r(2008)数据库中获取数据.cyurrent方法是使用DataTable,然后传递并使用它.
if (parameters != null)
{
SqlDataAdapter _dataAdapter = new SqlDataAdapter(SqlQuery, CreateFORSConnection());
foreach (var param in parameters)
{
_dataAdapter.SelectCommand.Parameters.AddWithValue(param.Name, param.Value);
}
DataTable ExtractedData = new DataTable(TableName);
_dataAdapter.Fill(ExtractedData);
return ExtractedData;
}
return null;
Run Code Online (Sandbox Code Playgroud)
但是现在,用户已经说过我们也可以从txt文件中获取数据,这些文件与SQL Server中的表具有相同的结构.所以,如果我有一个名为'Customer'的表,那么我有一个带有Customer的csv文件.具有相同的列结构.CSV中的第一行是列名,并匹配我的表.
是否可以将txt文件读入数据表,然后以某种方式在该数据表上运行SELECT?我的大多数查询都是单表查询:
SELECT * FROM Table WHERE Code = 111
Run Code Online (Sandbox Code Playgroud)
但是,有一个案例我会加入.这可能有点棘手,但我可以制定一个计划.如果我可以先将txt文件放到数据表中,我可以使用它.
使用上面的代码,我是否可以不将连接字符串更改为从CSV而不是SQL Server读取?
首先,您需要将CSV数据读入DataTable.有很多CSV解析器,但由于您更喜欢使用ADO.NET,因此可以使用OleDB客户端.请参阅以下文章.
http://www.switchonthecode.com/tutorials/csharp-tutorial-using-the-built-in-oledb-csv-parser
加入有点困难,因为两组数据都存在于不同的地方.但你可以做的是获得两个DataTables(每个来源一个),然后使用Linq加入它们.
| 归档时间: |
|
| 查看次数: |
131 次 |
| 最近记录: |