三个表
1:user用户表
字段比如有:ID,Name,department,role
2:Department部门表
字段有:ID,name
3:Role角色表
字段有:ID,name如何查询把用户的姓名,所属部门,角色查询并显示到DataGrid上面
要求查询出来的值由DataTable做数据源绑定到DataGrid上面,请问怎么解决紧急!谢谢大虾们!!!如建临时表请问怎么处理,小弟不是很熟悉,如果建试图又是如何去解决的?麻烦高手赐教!
1:user用户表
字段比如有:ID,Name,department,role
2:Department部门表
字段有:ID,name
3:Role角色表
字段有:ID,name如何查询把用户的姓名,所属部门,角色查询并显示到DataGrid上面
要求查询出来的值由DataTable做数据源绑定到DataGrid上面,请问怎么解决紧急!谢谢大虾们!!!如建临时表请问怎么处理,小弟不是很熟悉,如果建试图又是如何去解决的?麻烦高手赐教!
解决方案 »
- 下载文件时的重命名问题(截断或乱码)
- 为什么弹出页面窗口拖动框被主页遮挡
- iTextSharp.dll 怎么设置页面高度
- 高手帮我看一下了事务的前台调用问题?
- [求助]如何实现"上次进入系统的时间"?
- DataGrid里有一列是ID号,我能不能根据这个号提取内容,也就是生成个链接。看代码吧
- 实时刷新问题
- 最近作一个行业门户网站,需要一个html编辑器,下载了freetextBox1.6.3,好像不能插入flash,大家说用什么好?
- 关于购物车实现原理,大家说说!!!!
- 怎样获取rpt文件里的字段的值
- InitializeComponent()??这个方法的功能是什么?
- datalist控件的数据库问题
1. string s="select a.*,b.*,c* from user a,Department b,Role c where a.department=b.ID and a.role=c.ID"2.DataGrid1.DataSource=//执行sql语句返回来的DataTable
DataGrid1.DataBind();
create view view_test
as
select a.*,b.*,c* from user a join Department b on a.department=b.id
join role c on a.role=c.id
生成视图也可以但是不方便以后的变动
如果你不怕麻烦 还可以分别查询3个表然后组合datatable
再对datagridbind
一、在SQL查询语句中使用连接(假如楼主你只关心结果)
select a.ID,a.Name,a.department,a.role,
b.ID,b.name,c.ID,c.name
from 用户表 a,部门表 b,角色表 c
where a.department=b.ID and a.role=c.ID
这样直接连接的好处就是简单,但假如楼主你查询的数据条目数不多完全可以考虑这样做,这样做的坏处就是性能低下,数据库中实体关系结构散乱。
二、建立表与表之间的关系,然后创建视图
关系草图: 部门表 《- 用户表 《- 角色表
有了正确的关系后创建视图便比较简单,但要注意一点的是视图当中表与表的连接是左连接、右连接还是内连。
这样做的好处就是解决方案一的坏处,这样做的坏处刚好破坏了方案一的好处。
DataGrid1.DataBind();
da.fill(dt,"表1,表2,表3,表4")
DataGrid1.DataSource=dt;
DataGrid1.DataBind();