日期:2014-05-17  浏览次数:20397 次

dataset 执行查询为何只返回一个值?
我的表里面有7个值。他只 返回1个值
C# code

                string sqlcz = "SELECT uname FROM t";//查询表里面有7个值
                DataSet ds = conn.ReturnDataSet(sqlcz);
                for (int i = 0; i < ds.Tables.Count; i++)//ds.Tables.Count这里数量只有1
                {
                    this.lbldate.Text = ds.Tables[0].Rows[i]["uname"].ToString();//最后打印出来的就只有第一个值
                }




------解决方案--------------------
因为你的结果集返回的就一个值,你的dataset的table里面的行数是1行,所以打印出的结果就是1个啊!
------解决方案--------------------
this.lbldate.Text += ds.Tables[0].Rows[i]["uname"].ToString()+"<br/>";
------解决方案--------------------
foreach (DataRow n in ds.Rows)
{
this.lbldate.Text=n[0].tostring(); 
}
试试
------解决方案--------------------
dataset中的table数量只有一个
ds.Tables[0].rows.Count;
这样应该就有7条了
------解决方案--------------------
for循环 每循环一次 都会把上面的结果覆盖一次 所有你得到就是最后的一个结果 所以只有一个值 你可以用foreach 或者你按照3楼的写法 就可以了