从 SQL reader 到数据表的数据 - 在 reader 关闭时调用 Read 的尝试无效
Data from SQL reader to datatable - Invalid attempt to call Read when reader is closed
我一直在尝试,但仍然不知道如何解决这个问题,不断出现同样的错误。我想从数据库中获取数据到txt文件。
using (conn)
{
conn.Open();
SqlCommand cmd = new SqlCommand(command)
cmd.Connection = (SqlConnection)conn;
using (cmd)
{
SqlDataReader reader = cmd.ExecuteReader();
using(reader)
{
while (reader.Read())
{
dt.Load(reader);
}
}
using (StreamWriter sw = new StreamWriter(txtPath.Text + fileName))
{
// write to text file from Datatable dt
} }
尝试安装您的代码,如下所示:
DataTable myDataTable = new DataTable();
using (SqlConnection myConnection = new SqlConnection(yourDBconn)
{
yourDBconn.Open();
using (SqlDataAdapter myAdapter = new SqlDataAdapter(strYourQuery, yourDBconn))
{
myAdapter.Fill(myDataTable);
}
}
}
给你。已测试。
var customers = new List<Tuple<int, string>>(); // the list of ID, Name
using (var con = new SqlConnection("your connection string"))
{
using(SqlCommand cmd = new SqlCommand("select ID, Name from Customer", con))
{
con.Open();
using(SqlDataReader reader = cmd.ExecuteReader())
{
while (reader.Read())
{
customers.Add(new Tuple<int, string>(
(int)reader["ID"], reader["Name"].ToString()));
}
}
}
}
// Store customers to file
我一直在尝试,但仍然不知道如何解决这个问题,不断出现同样的错误。我想从数据库中获取数据到txt文件。
using (conn)
{
conn.Open();
SqlCommand cmd = new SqlCommand(command)
cmd.Connection = (SqlConnection)conn;
using (cmd)
{
SqlDataReader reader = cmd.ExecuteReader();
using(reader)
{
while (reader.Read())
{
dt.Load(reader);
}
}
using (StreamWriter sw = new StreamWriter(txtPath.Text + fileName))
{
// write to text file from Datatable dt
} }
尝试安装您的代码,如下所示:
DataTable myDataTable = new DataTable();
using (SqlConnection myConnection = new SqlConnection(yourDBconn)
{
yourDBconn.Open();
using (SqlDataAdapter myAdapter = new SqlDataAdapter(strYourQuery, yourDBconn))
{
myAdapter.Fill(myDataTable);
}
}
}
给你。已测试。
var customers = new List<Tuple<int, string>>(); // the list of ID, Name
using (var con = new SqlConnection("your connection string"))
{
using(SqlCommand cmd = new SqlCommand("select ID, Name from Customer", con))
{
con.Open();
using(SqlDataReader reader = cmd.ExecuteReader())
{
while (reader.Read())
{
customers.Add(new Tuple<int, string>(
(int)reader["ID"], reader["Name"].ToString()));
}
}
}
}
// Store customers to file