string sql = "select  map.RESNAME,res.GATEOPENNUM,E,GATEOPENTM from RESSLUICE res left join RESMAP map on res.ID=map.ID  where res.S_ID=" + 27 + " order by GATEOPENTM desc";
            sql = "select * from RESSLUICE a ,RESMAP b where a.ID=b.ID and a.S_ID=27";
            //SqlDataAdapter ad = new SqlDataAdapter(sql, ConfigurationManager.ConnectionStrings["modeldb"].ToString());
            //DataSet dataSet = new DataSet("resmapandressluice");
            //ad.Fill(dataSet);
            SqlDataAdapter adpter = new SqlDataAdapter(sql, ConfigurationManager.ConnectionStrings["modeldb"].ToString());
            DataSet dataSet = new DataSet("set");
            adpter.Fill(dataSet);
            DataTable resRessTable = dataSet.Tables[0];
            if (resRessTable != null && resRessTable.Rows.Count > 0)
本事sql语句里有两条数据了!为什么到了resRessTable.Rows.Count 这里就是0了,麻烦大家帮帮忙了!急用!谢谢了

解决方案 »

  1.   

    两条语句一起执行吗?你现在只能执行一条语句了.
    如果两条一起执行的话:
    sql += "select * from RESSLUICE a ,RESMAP b where a.ID=b.ID and a.S_ID=27";
    res.S_ID=" + 27 + "这个是什么意思啊?把+除掉
      

  2.   

    两条sql?要么合并一下是可以一次执行多条  但是不是你这样  
      

  3.   

    试下这样得不得:
    sql =select * from RESSLUICE INNER JOIN RESMAP ON RESSLUICE.ID=RESMAP.ID and RESSLUICE.S_ID=27;
      

  4.   

    去数据库执行"select * from RESSLUICE a ,RESMAP b where a.ID=b.ID and a.S_ID=27";
    看看能能不能查询到数据
      

  5.   

    你是说,数据库里有两条数据了,但是在resRessTable.Rows.Count = 0
    建议是:在
    DataSet dataSet = new DataSet("set");
    打断点,单步调试,看看dataset里有没有值。
      adpter.Fill(dataSet);
      DataTable resRessTable = dataSet.Tables[0];
      

  6.   

    string sql = "select map.RESNAME,res.GATEOPENNUM,E,GATEOPENTM from RESSLUICE res left join RESMAP map on res.ID=map.ID where res.S_ID=" + 27 + " order by GATEOPENTM desc";
      sql = "select * from RESSLUICE a ,RESMAP b where a.ID=b.ID and a.S_ID=27";是一样的 这样写的目的是啥? 2覆盖1?