如何把dataset的值赋给datagridview

xiaoniu19851005 2008-06-17 10:19:52
程序代码为
string connectionstring = "user id=sa;password=sa;initial catalog=db;Server=Localhost;Connect Timeout=30";
SqlConnection conn = new SqlConnection(connectionstring);
conn.Open();
SqlCommand comm = new SqlCommand();
comm.Connection = conn;
comm.CommandType = CommandType.Text;
comm.CommandText = "SELECT * FROM Student";
DataSet ds = new DataSet();
SqlDataAdapter da = new SqlDataAdapter();
da.SelectCommand = comm;
da.Fill(ds);
我想把dataset的值显示到控件datagridview里面,往下该怎么写呢,我写
dataGridView1.DataSource = ds.Tables;可是不显示结果
...全文
438 20 打赏 收藏 转发到动态 举报
写回复
用AI写文章
20 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhangker 2008-06-19
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 zanfeng 的回复:]
或者加个DATABING的控件。 一般都是用它。
[/Quote]
我姓区不姓区 2008-06-19
  • 打赏
  • 举报
回复
[Quote=引用 16 楼 sunyj1983 的回复:]
弱弱的问下da.Fill(ds,"自己写个表名");
这样在绑定的时候this.dataGridView1.DataSource = ds.Tables["刚才写的表名"]
怎么把更dataGridView1的表中的信息更新到sql中啊?我在sql中怎么看不到添加到信息
[/Quote]
da.Update(ds,"数据库表名");
sunyj1983 2008-06-19
  • 打赏
  • 举报
回复
弱弱的问下da.Fill(ds,"自己写个表名");
这样在绑定的时候this.dataGridView1.DataSource = ds.Tables["刚才写的表名"]
怎么把更dataGridView1的表中的信息更新到sql中啊?我在sql中怎么看不到添加到信息
sunyj1983 2008-06-19
  • 打赏
  • 举报
回复
ds.Tables[0]是dataset集合中的表,用的索引
ViewStates 2008-06-19
  • 打赏
  • 举报
回复
SELECT * FROM Student
你这个只生成了一张表啊
所以你用DS.TABLES[0]
如果你有多个SELECT
比如
SELECT * FROM Student
SELECT * FROM TEACHERS
SELECT * FROM USERS
则对应的就是DS.TABLES[0] DS.TABLES[1] DS.TABLES[2]
贫僧又回来了 2008-06-19
  • 打赏
  • 举报
回复
因为你数据集就一张表啊!索引是从0开始的!
要是有多张表的话建议最好这样
da.Fill(ds,"自己写个表名");
这样在绑定的时候this.dataGridView1.DataSource = ds.Tables["刚才写的表名"]
xiaoniu19851005 2008-06-19
  • 打赏
  • 举报
回复
谢谢,能显示出来了,为什么用ds.Tables[0]而不用ds.Tables[1]什么的呢
iepshen 2008-06-19
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 mqcan 的回复:]
dataGridView1.DataSource = ds.Tables[0].DefaultView
[/Quote]
s32702 2008-06-19
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 mqcan 的回复:]
dataGridView1.DataSource = ds.Tables[0].DefaultView
[/Quote]
markspain 2008-06-18
  • 打赏
  • 举报
回复
dataGridView1.DataSource = ds;
dataGridView1.DataMember = “数据集中的表名”;(要显示哪个表写哪个表)
etherealkite 2008-06-18
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 xiaoniu19851005 的回复:]
我是想把用sql语句查询得到的新表显示出来,有时候可能查询到的表大小不相同。例如模糊查询三个表时,三个表的列数是不相同的,查询结果都在datagridview里面显示怎么显示呢?谢谢
[/Quote]
不知道你是要三个表的内容查询出来的结果填充到一个还是多个DataGridView
如果填充到一个DataGridView且三个表有关联的话,查询用的Sql语句就要用到外连接或者内连接
如果用到多个DataGridView且每个表的列数都不同的话,那只好填充到多个DataGridView了咯。
baihe_591 2008-06-18
  • 打赏
  • 举报
回复
this.dataGridView1.DataSource = ds.Tables[0].DefaultView
yagebu1983 2008-06-18
  • 打赏
  • 举报
回复
GridView1.DataSource=ds.Tables[0];
GridView1.DataBind();
zzc0527 2008-06-18
  • 打赏
  • 举报
回复
建议增加tab控件,然后根据返回的表的数量生成tab页,然后在tab页上动态增加datagridview控件,这样可以保证查询取回的多个表在多个tab页中的datagridview中显示
xiaoniu19851005 2008-06-18
  • 打赏
  • 举报
回复
我是想把用sql语句查询得到的新表显示出来,有时候可能查询到的表大小不相同。例如模糊查询三个表时,三个表的列数是不相同的,查询结果都在datagridview里面显示怎么显示呢?谢谢
KartChen 2008-06-18
  • 打赏
  • 举报
回复
DataSet里面的Tables里的Table于控件进行映射
jianghao168 2008-06-17
  • 打赏
  • 举报
回复
dataGridView1.DataSource = ds.Tables
ds.Tables这是一个集合需要用ds.Tables[索引]或ds.Tables[填充ds时定义的表名]获取表元素
如:da.Fill(ds,"student");
dataGridView1.DataSource = ds.Tables[0];
dataGridView1.DataSource = ds.Tables["stdent"];
懒牛科技 2008-06-17
  • 打赏
  • 举报
回复
dataGridView1.DataSource = ds.Tables[0].DefaultView
足球中国 2008-06-17
  • 打赏
  • 举报
回复
或者加个DATABING的控件。 一般都是用它。
贫僧又回来了 2008-06-17
  • 打赏
  • 举报
回复
dataGridView1.DataSource = ds.Tables[0]

110,566

社区成员

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

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

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