datareader如何返回一行数据?

ximenwuji 2012-09-10 04:15:13
使用datareader返回一行数据,然后再把此行数增加到一个datagridview中?
谢谢啦
...全文
182 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
ximenwuji 2013-03-04
  • 打赏
  • 举报
回复
引用 5 楼 sp1234 的回复:
如果说一个人他写了一个循环语句来一行一行处理数据,而不会处理第一行,这就无语了啊。这只能找人手把手去教。而csdn不应该沦为教这样的代码的论坛的。
 MyCon.Open();
                OdbcCommand myCom = new OdbcCommand(strsql);
                myCom.Connection = MyCon;
                DataSet ds = new DataSet();
                OdbcDataAdapter da = new OdbcDataAdapter(strsql, MyCon);
                da.Fill(ds);
                dataGridView1.AutoGenerateColumns = false;
                IEnumerator MyEnum =    ds.Tables[0].DefaultView.Table.Rows.GetEnumerator();
                while (MyEnum.MoveNext())
                {
                    dataGridView1.Rows.Add((DataRow) MyEnum.Current);
                }
我是这样写的,不行
stonespace 2012-09-11
  • 打赏
  • 举报
回复
有时候只需要读取一行,不过即使如此,也可以用datatable,在select语句中限制只查出一行,
  • 打赏
  • 举报
回复
如果说一个人他写了一个循环语句来一行一行处理数据,而不会处理第一行,这就无语了啊。这只能找人手把手去教。而csdn不应该沦为教这样的代码的论坛的。
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 的回复:]
楼上的,如果读取了很多行,怎么办?楼主只要一行!?
[/Quote]

那个代码难道不是一行一行地处理“多行”内容的嘛。

好比如说人家问你“怎样上一级台阶”,你回答“我会上10级台阶,但是从来没有试过上1级台阶”。不是别人不理解你,是你的回答有悖于自己的理解力啊(你自己站在别人的角度理解一下试试看)。
全国话费充值 2012-09-11
  • 打赏
  • 举报
回复
where(datareader.reader())
{
datagridview.datasource.add(datareader);
break;
}
y2565120 2012-09-10
  • 打赏
  • 举报
回复
楼上的,如果读取了很多行,怎么办?楼主只要一行!?
zhanglong19891129 2012-09-10
  • 打赏
  • 举报
回复
datatable my=new datatable();
if(datareader.reader())
{
my.rows.add(datareader);//如果读取了一行,就加一行,,问题是你读取的所有行必须结构一致才得
}
datagridview.datasource=my;
shizhu820228 2012-09-10
  • 打赏
  • 举报
回复
不明白你为啥用datareader,你直接返回 datatable,
和你绑定datagridview的datatable merge一下,再绑定不就完了嘛

110,549

社区成员

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

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

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