帮忙解释一下这段代码,谢谢!!!
我的理解是表Orders是由[order Details],Products 这两个表查询的结果得来的,是不是?
还有就是下面的帮定不是很清楚,请帮忙解释一下!!  private void DataGridDataBind()
  {
   //定义数据连接对象,其中数据库连接字符串是在Web.Config文件中定义的
   SqlConnection conn = new SqlConnection(ConfigurationSettings.AppSettings["ConnectionSqlServer"].ToString());
   //创建数据适配器对象
   SqlDataAdapter da = new SqlDataAdapter("Select top 5 * from Orders  select OrderID ,Products.ProductName,[order Details].Unitprice,[order Details].Quantity,[order Details].discount from [order Details],Products where [Order Details].ProductId=Products.ProductID",conn);
   //创建DataSet对象
   DataSet ds = new DataSet();
   try
   {
    //填充数据集
    da.Fill(ds);
    //设定表名字
    ds.Tables[0].TableName = "Orders";
    ds.Tables[1].TableName = "Order Details";
    DataColumn Parent = ds.Tables["Orders"].Columns["OrderID"];
    DataColumn Child  = ds.Tables["Order Details"].Columns["OrderID"];
    DataRelation tableRelation = new DataRelation("tableRelation", Parent, Child, false);
    ds.Relations.Add(tableRelation);
    //进行数据绑定
    dgMaster.DataSource = ds.Tables["Orders"].DefaultView;
    dgMaster.DataBind();
   }
   catch(Exception error)
   {
    Response.Write(error.ToString());
   } 
}

解决方案 »

  1.   

    同时查询出主表Orders,从表[Order Details].的数据
      
    *****************************************************************************
    欢迎使用CSDN论坛专用阅读器 : CSDN Reader(附全部源代码) 
    http://feiyun0112.cnblogs.com/
      

  2.   

    ds.Tables[0].TableName = "Orders"; 
        ds.Tables[1].TableName = "Order Details"; 
        DataColumn Parent = ds.Tables["Orders"].Columns["OrderID"]; 
        DataColumn Child  = ds.Tables["Order Details"].Columns["OrderID"]; 
        DataRelation tableRelation = new DataRelation("tableRelation", Parent, Child, false); 
        ds.Relations.Add(tableRelation); 
        //进行数据绑定 
        dgMaster.DataSource = ds.Tables["Orders"].DefaultView; 
     是什么意思呢??
      

  3.   

    我想把下面的语句的结果放到DATAGRID里去,该怎么写?
    select kaohe.name as 姓名,kaohe.totalzpf as 自评分,kaohe.totalkspf as 复评分,kaohe.totalkpxz as 总评分 FROM kaohe,renyuan where kaohe.pici like '"+TextBox1.Text.ToString()+"' and renyuan.keshi like '"+keshi+"'
      

  4.   

    http://msdn.microsoft.com/zh-cn/vbrun/d6s958d6(VS.80).aspx
      

  5.   

    一个奇怪的问题,我查询出的结果为什么重复显示在DATAGRID里? 显示的结果是  同样的记录 重复填满整个页面?请问是什么问题???
    try 
    { string dbname; 
    dbname=Server.MapPath("kaohe.mdb"); 
    OleDbConnection myConnection = new OleDbConnection( "PROVIDER=Microsoft.Jet.OLEDB.4.0;DATA Source=" + dbname ); 
    myConnection.Open(); 
      
    DataSet ds  = new DataSet(); 
    OleDbDataAdapter adapter = new OleDbDataAdapter( "select kaohe.name as 姓名,kaohe.totalzpf as 自评分,kaohe.totalkspf as 复评分,kaohe.totalkpxz as 总评分 FROM kaohe,renyuan where kaohe.pici like '"+TextBox1.Text.ToString()+"' and renyuan.keshi = '1'", myConnection ); adapter.Fill(ds); 
    DataGrid1.DataSource = ds.Tables[0].DefaultView; 
    DataGrid1.DataBind(); myConnection.Close(); 

    catch(Exception err) 
    { Response.Write(err.Message); }