WinFrom 里 DataGridView 如何显示多个表的数据

czcb 2008-05-12 01:16:12
现在有3个表

表1 A 里有 ID CLASSID ANAME 等
表2 B 里有 ID CLASSNAME 等
表3 C 里有 ID AID CNAME 等

我现在以 表1 A 为主表
列出 表1 A 的数据 但是里面 CLASSID 要根据数据获得 表2 B 里对应的ID 的 CLASSNAME 然后显示 表3 C里根据 A里表的ID对应的AID显示出NAME

ANAME CLASSNAME CNAME
1 test t

但是表2跟表3有可能有不对应的数据

请高手请教一下 DATAGRIDVIEW 里如何操作

忙活了好几天 试了好多种方法了 还是不行
...全文
294 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
贫僧又回来了 2008-05-13
  • 打赏
  • 举报
回复
那就用连接做吧!
select a.aname,b.classname,c.name from a
left join b on a.id=b.classid
left join c on a.id=c.aid
czcb 2008-05-13
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 lqmzn 的回复:]
str="select a.id,a.classid,a.aname,b.classname,c.aid,c.cname from a,b,c where a.id=b.id and a.id=c.id";

SqlConnection conn =new SqlConnection ("ddd");
SqlDataAdapter ad =new SqlDataAdapter(str,conn);
DataSet ds=new DataSet ();
ad.Fill (ds,"table");
下面估计你也会做了
[/Quote]

我一开始也是这样做的 但是 b c 表里可能不存在指定的数据的话 a 表数据也不显示了 不匹配
lqmzn 2008-05-12
  • 打赏
  • 举报
回复
str="select a.id,a.classid,a.aname,b.classname,c.aid,c.cname from a,b,c where a.id=b.id and a.id=c.id";

SqlConnection conn =new SqlConnection ("ddd");
SqlDataAdapter ad =new SqlDataAdapter(str,conn);
DataSet ds=new DataSet ();
ad.Fill (ds,"table");
下面估计你也会做了
jason369 2008-05-12
  • 打赏
  • 举报
回复
在你查询的时候将多个表的数据查出来,放在DATASET中,绑定到DataGridView上就可以了呀。
征服者X 2008-05-12
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 jyj0207 的回复:]
可以用一段sql文,把值取得放到里dataset里
[/Quote]
jyj0207 2008-05-12
  • 打赏
  • 举报
回复
可以用一段sql文,把值取得放到里dataset里
virusswb 2008-05-12
  • 打赏
  • 举报
回复
多个表绑定dataset,然后datagridview绑定dataset

不对应的,可以添加一些列,让他强行对应

110,536

社区成员

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

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

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