请问一个SqlDataReader的问题,请大家帮忙解决,马上给分。 one connection can be only associated with one datareader at a time, either use multiple connections or use DataSet 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 那当然了,你可以用dataset来记录第一个数据集,再用reader打开第二个 没办法的,一个connection对象只能与一个DataReader连接。你可以用几个相同的connection对象来产生DataReader 在一個數據庫聯接上不能同時有兩個或者兩個以上的 SqlDataReader打開的。所以每次使用后必須關閉 SqlDataReader. SqlDataReader R1= cmd.ExecuteReader(); while(R1.Read()) { sqlstr = "select * from 表2" //再新建立一個聯接即可。 SqlDataReader R2= cmd.ExecuteReader(); //到这里报错,该怎么办? } SqlDataReader R1= cmd.ExecuteReader(); while(R1.Read()) { sqlstr = "select * from 表2" //执行完后 R1.Close(); SqlDataReader R2= cmd.ExecuteReader(); //到这里报错,该怎么办? } SqlDataReader对像打开后是一直保持连接的(这与DataSet不一样),在每次用完及时关闭连接,下次用时再打开就不会有错了。 OleDbConnection Conxxwgl = new OleDbConnection(ConfigurationSettings.AppSettings["ConnXxwgl"]); string StrGetInfo = "select * from xxwt_bm_dw where dwdh = '" + dwdh + "'"; OleDbCommand OlecmdInfo = new OleDbCommand(StrGetInfo,Conxxwgl); Conxxwgl.Open(); OleDbDataReader OleReader; OleReader = OlecmdInfo.ExecuteReader(); while (OleReader.Read()) { _Dwdh = OleReader["dwdh"].ToString(); _Dwmc = OleReader["dwmc"].ToString(); } Conxxwgl.Close(); return true; C# WinForm程序运行一段时间后自动关闭 怎样将dataGridView里选中的一行内容显示在textBox里 如何让只读TextBox通过CheckBox变为可修改 关于动态生成CheckBox问题,急。。。。。。。。。。。。 菜鸟问题,关于正则表达式得! VS默认是否不安装ADO.NET?我的ADO那去了? 弱弱地问一句 c# API语法问题 datagridview问题 多线程与Queue列队使用出了点问题 明天大年30了,现来征个春联贴贴 向导创建的数据录入窗体老是有问题 在 Web 窗体页中显示数据,帮忙看一下!
所以每次使用后必須關閉 SqlDataReader.
SqlDataReader R1= cmd.ExecuteReader();
while(R1.Read())
{
sqlstr = "select * from 表2"
//再新建立一個聯接即可。
SqlDataReader R2= cmd.ExecuteReader(); //到这里报错,该怎么办?
}
while(R1.Read())
{
sqlstr = "select * from 表2"
//执行完后
R1.Close();
SqlDataReader R2= cmd.ExecuteReader(); //到这里报错,该怎么办?
}
string StrGetInfo = "select * from xxwt_bm_dw where dwdh = '" + dwdh + "'";
OleDbCommand OlecmdInfo = new OleDbCommand(StrGetInfo,Conxxwgl);
Conxxwgl.Open();
OleDbDataReader OleReader;
OleReader = OlecmdInfo.ExecuteReader();
while (OleReader.Read())
{
_Dwdh = OleReader["dwdh"].ToString();
_Dwmc = OleReader["dwmc"].ToString();
}
Conxxwgl.Close();
return true;