我有一个在C#中的远程sql连接需要执行查询并将结果保存到用户本地硬盘。这个东西可以返回相当大量的数据,因此需要考虑一种有效的存储方式。我之前读过,先将整个结果放入内存,然后再写入不是一个好主意,所以如果有人能帮忙,那就太好了!
我目前将sql结果数据存储到DataTable中,虽然我认为在while(myReader.Read(){...}中做些什么可能会更好。以下是获取结果的代码:
所以现在我有一个巨大的结果字符串。而且我有数据表。肯定有更好的方法做到这一点吧?
谢谢。
我目前将sql结果数据存储到DataTable中,虽然我认为在while(myReader.Read(){...}中做些什么可能会更好。以下是获取结果的代码:
DataTable t = new DataTable();
string myQuery = QueryLoader.ReadQueryFromFileWithBdateEdate(@"Resources\qrs\qryssysblo.q", newdate, newdate);
using (SqlDataAdapter a = new SqlDataAdapter(myQuery, sqlconn.myConnection))
{
a.Fill(t);
}
var result = string.Empty;
for(int i = 0; i < t.Rows.Count; i++)
{
for (int j = 0; j < t.Columns.Count; j++)
{
result += t.Rows[i][j] + ",";
}
result += "\r\n";
}
所以现在我有一个巨大的结果字符串。而且我有数据表。肯定有更好的方法做到这一点吧?
谢谢。