为什么sqldatareader没有数据

pvm6b2 2008-12-01 12:14:55
我使用一个C#数据库类读取数据库,首先数据库里面有数据并且读取条件没有问题
dbopt opt= new dbopt();
TreeNode tr = this.treeView1.SelectedNode;
SqlDataReader dr;
string PatternTypeID;
string sql;

sql = "select id from Ocean_PatternTypeTree where PatternTypeID = '2000'";
SqlParameter[] myparm = { new SqlParameter("@PatternTypeID", SqlDbType.VarChar, 50) };
myparm[0].Value = this.treeView1.SelectedNode.ToString();
dr = opt.ExecuteReader(sql);


common.ShowInfo(dr[0].ToString());

总是说在"dr[0].ToString(" 这个地方"在没有任何数据时进行无效的读取尝试。" 这是怎么回事?
数据库查询函数
public SqlDataReader ExecuteReader(string strSQL)
{
SqlConnection connection = new SqlConnection(connectionString);
SqlCommand cmd = new SqlCommand(strSQL,connection);
try
{
connection.Open();
SqlDataReader myReader = cmd.ExecuteReader();
return myReader;
}
catch(System.Data.SqlClient.SqlException e)
{
throw new Exception(e.Message);

}

}
...全文
98 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
tinghai_xu 2008-12-01
  • 打赏
  • 举报
回复
我使用一个C#数据库类读取数据库,首先数据库里面有数据并且读取条件没有问题
dbopt opt= new dbopt();
TreeNode tr = this.treeView1.SelectedNode;
SqlDataReader dr;
string PatternTypeID;
string sql;

sql = "select id from Ocean_PatternTypeTree where PatternTypeID = '2000'";
SqlParameter[] myparm = { new SqlParameter("@PatternTypeID", SqlDbType.VarChar, 50) };
myparm[0].Value = this.treeView1.SelectedNode.ToString();
dr = opt.ExecuteReader(sql);

if(dr.Read())
{
common.ShowInfo(dr[0].ToString());
}


总是说在"dr[0].ToString(" 这个地方"在没有任何数据时进行无效的读取尝试。" 这是怎么回事?
数据库查询函数
public SqlDataReader ExecuteReader(string strSQL)
{
SqlConnection connection = new SqlConnection(connectionString);
SqlCommand cmd = new SqlCommand(strSQL,connection);
try
{
connection.Open();
SqlDataReader myReader = cmd.ExecuteReader();
return myReader;
}
catch(System.Data.SqlClient.SqlException e)
{
throw new Exception(e.Message);

}

}
superliu1122 2008-12-01
  • 打赏
  • 举报
回复
要先调用dr.Read();读取数据才能dr[0].ToString()

110,533

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧