con.Open();
OleDbCommand com = con.CreateCommand();
com.CommandText = "select * from filetable";
OleDbDataReader dr = com.ExecuteReader();
while (dr.Read())
{
label1.Text += dr.GetString(dr.GetOrdinal("filepath"))+"\n";
}
dr.Close();
con.Close();只要 查询到 某个字段为空就出现在异常。 access数据库我已经设置可以为空。
加个判断就好了啊
label1.Text += dr.GetString(dr.GetOrdinal("filepath"))+"\n";
出现异常where(dr)后面的数据就读取不出来了。
怎么解决 大哥们说清楚点。
OleDbCommand com = con.CreateCommand();
com.CommandText = "select filepath from filetable where author='发射点'";
OleDbDataReader dr = com.ExecuteReader();
while (dr.Read())
{
label1.Text = dr.GetString(dr.GetOrdinal("filepath"));
}
dr.Close();
con.Close();用OleDbDataReader 循环读取就出错,提示这个InvalidCastException异常。
但用 label1.Text = com.ExecuteScalar().ToString ();
这个就不出异常。 怎么回事 高手指点下。 分不够再加。