如何取出dataset的查询结果
使用下面的方法执行存储过程并返回查询结果,代码执行正常,查询结果是一个结果集,取得DataSet后该如何循环读出其中的内容
代码大致如下
SqlConnection conn;
...连接数据库
private SqlCommand sqlCmd;
private SqlDataAdapter sqladapter;
sqladapter = new SqlDataAdapter();
DataSet dataset = new DataSet();
sqlCmd = new SqlCommand( "sp_test ", conn);
//设置使用存储过程
_sqlCmd.CommandType = CommandType.StoredProcedure;
try
{
sqladapter.SelectCommand = sqlCmd;
sqladapter.Fill(dataset);
}
catch (Exception ex)
{
...
}
finally
{
conn.Close();
}
//接下来如何读出结果集中的内容?我想使用 dataset.Tables(0).
但是tables(0)不存在.但是我跟踪SQL查询是正确的,应该有记录
------解决方案--------------------foreach(datarow dr in dataset.Tables[0].rows)
{
dr[0].ToString();
dr[1].ToString();
dr[2].ToString();
}
------解决方案--------------------sqladapter.Fill(dataset);改成sqladapter.Fill(dataset, "tablename ");
然后 dataset.Table[ "tablename "].rows[][].ToString();