DataGrid绑定多个表数据问题
三个表 
 1:user用户表 
 字段比如有:ID,Name,department,role 
 2:Department部门表 
 字段有:ID,name 
 3:Role角色表 
 字段有:ID,name   
 如何查询把用户的姓名,所属部门,角色查询并显示到DataGrid上面 
 要求查询出来的值由DataTable做数据源绑定到DataGrid上面,请问怎么解决   
 紧急!谢谢大虾们!!!   
 如建临时表请问怎么处理,小弟不是很熟悉,如果建试图又是如何去解决的?   
 麻烦高手赐教!
------解决方案--------------------      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
------解决方案--------------------在数据库上做一个包含表1、2、3各需要字段的视图,应该easy,楼上正解。
------解决方案--------------------如果是要这三个表的内容用一条查询语句就可以满足 
 生成视图也可以但是不方便以后的变动 
 如果你不怕麻烦 还可以分别查询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 
 这样直接连接的好处就是简单,但假如楼主你查询的数据条目数不多完全可以考虑这样做,这样做的坏处就是性能低下,数据库中实体关系结构散乱。 
 二、建立表与表之间的关系,然后创建视图 
 关系草图: 部门表 《- 用户表 《- 角色表 
 有了正确的关系后创建视图便比较简单,但要注意一点的是视图当中表与表的连接是左连接、右连接还是内连。 
 这样做的好处就是解决方案一的坏处,这样做的坏处刚好破坏了方案一的好处。
------解决方案--------------------只有三个表,直接查询就好了,不是很麻烦
------解决方案--------------------三个表建立试图view,直接用datagrid绑定试图view就可以
------解决方案--------------------user用户表和Role角色表是一对一关系的,那就用简单的视图或者直接拼SQL语句读取。如果是一对多关系,可以用DataGrid嵌套或者写条复杂点的SQL语句了。
------解决方案--------------------自己写一个object datasource啦
------解决方案--------------------一條sql就能解決的問題,搞那麼複雜,大項目????
------解决方案--------------------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();
------解决方案--------------------前面的我就不写了 
 da.fill(dt, "表1,表2,表3,表4 ") 
 DataGrid1.DataSource=dt; 
   DataGrid1.DataBind();