我有两个表,
 第一个:employee(学生成绩表)
 student_id (学号)
 subject_id (科目代号)
 grade      (成绩)
 ...
 第二个:subject(科目表)
 subject_id    科目代号
 subject       科目名称,如数学、英语...
两个表通过科目代号建立关系现在我想建立一个datagrid,内容如下
--------------------
| 英语   |  80     |
--------------------
| 数学   |  90     |
--------------------
问题:如何建立datagrid与这两个表的绑定以实现上图的表格?

解决方案 »

  1.   


    你可查一下历史帖子,有人问过
    是关于2表绑定datagrid的问题
      

  2.   

    如果数据库用的是Sql server的话可以用存储过程为DataGrid1添加两列,并指定数据字段分别为subject和grade
    private void Page_Load(object sender, System.EventArgs e)
    {
    if(!this.IsPostBack)
    {
    DataSet ds=new DataSet();
    //strConn是你的数据库链接字符串
    ds=DataSet(strConn);
    DataGrid1.DataSource=ds;
    DataGrid1.DataBind();
    }
    }//strConn是你的数据库链接字符串
    public DataSet GetGrade(string strConn)
    {
    DataSet ds=new DataSet();
    SqlConnection myConn = new SqlConnection(strConn);
    SqlDataAdapter da = new SqlDataAdapter();
    SqlCommand myCmd = new SqlCommand();
    myCmd.Connection = myConn;
    myCmd.CommandText = "spGetGrade";
    myCmd.CommandType = CommandType.StoredProcedure;
    da.SelectCommand=myCmd;
    try
    {
    myConn.Open();
    da.Fill(ds,"tblGrade");
    return ds;
    }
    catch
    {
    return null;
    }
    finally
    {
    myCmd.Dispose();
    myConn.Dispose();
    myConn.Close();
    }
    }存储过程如下
    CREATE PROCEDURE spGetGrade AS
    SELECT distinct a.subject, b.grade
    FROM employee as a,subject as b
    WHERE a.subject_id=b.subject_id
    GO