db.openSQLServer();
 string str = "select master.approve_date from price_discount_order_master master " 
    +" WITH(NOLOCK) join price_discount_order_item item on master.discount_master_id=item.master_id "
    +" join lms_product_detail prod on prod.detail_id=item.detail_id where 1=1" ;
 sdb3 = db.SqlReader(str.Trim());
 DataColumn dc = new DataColumn("入库日期");
 dt3.Columns.Add(dc);
 while (sdb3.Read())
 {
    for (int i = 0; i < dt3.Rows.Count; i++)
    {
        dt3.Rows[i]["入库日期"] = sdb3["approve_date"];
    }
 }
我是想把查出的入库日期添加到dt3里。问题是:显示出的入库日期都是同一个值

解决方案 »

  1.   

    应该是同一个值..因为你用了2个循环.
    最终dt3.Rows[i]["入库日期"] 里面的值应该是你最后一次执行sdb3.Read()得到的值吧...每次while (sdb3.Read())  ,然后你都把dt3.Rows[i]["入库日期"]里面值重新覆盖,赋了一次.所以都一样.. 
      

  2.   

    http://www.5ixue.com/e/tool/gfen?id=289153
      

  3.   

    while (sdb3.Read())
    {
            DataRow row = dt3.NewRow();
            row ["入库日期"] = sdb3["approve_date"];
            da3.Rows.Add(row);
     这样就可以了。