DataGrid的DataSource只能有一个表。
你可以试试把几个表里的字段综合到一个表里面。
更新的时候用Command一个一个更新。

解决方案 »

  1.   

    你在sql语句中一次检索多个表不行吗?
      

  2.   

    多表查询没有问题,但更新还是个问题,更新恐怕要重新写sql去更新,直接利用DataSet可能不行。
      

  3.   

    To: mbm(-- (@ \/ @) --)
    用sQl语句可以一次检索多个表.但是用DataGrid显示多个表可就不知咋办了?
    请问您在数据显示这块都是怎么做的?我怎么觉的asp.net在这方面特别吃力.
    还不如用asp的RecordSet结合表格显示痛快,方便.
      

  4.   

    string connstring="data source=mbm;initial catalog=kms_db;user id=mbm;password=mbm";
    string selectstring="select person.*,employ.* from person,employ where person.iNo=employ.iNo";//这里从两个库表检索数据SqlConnection myconn=new SqlConnection(connstring);
    myconn.Open();SqlDataAdapter myadapter=new SqlDataAdapter(selectstring,myconn);
    DataSet ds=new DataSet();
    myadapter.Fill(ds,"ren");//现在把从两个库表里检索的数据填充到一个datatable中,datatable的name是“ren”

    DataGrid1.DataSource=ds.Tables["ren"].DefaultView;
    DataGrid1.DataBind();现在datagrid1中显示的数据不就是两个表里的东西了
      

  5.   

    为什么不能修改呢?可以用sqlcommand对象来改呀!分别修改就可以了
      

  6.   

    不能改只是局限在通过sqldataadapter的update修改数据库时,如果datatable中的数据不是来自同一个库表,update()会出现问题。但用sqlcommand对象不通过数据集直接操纵数据库是可以修改的。