string cmd1 = "select hwbh from fhxx where fhqdh='" + fhqdh + "'";  //接收参数作为查询条件,如果查询出来的hwbh 有多个的话 怎么循环呢?       
 DataSet ds = sqlHelp.GetDataSet(cmd1);            if (ds!=null)
        {
            string hwbh = ds.Tables[0].Rows[0][0].ToString();//这边不止一个hwbh的时候咋办?
            string cmd2 = "select hwbh,jydxx.sxhh,sdzmc,shrxm,hwmc,hwzjs,hwztj,hwzzl,hwyf,hwzt from hwxx,jydxx where jydxx.jydbh = hwxx.jydbh and  hwxx.hwbh ='" + hwbh + "'";
            DataSet ds_hwxx = sqlHelp.GetDataSet(cmd2);            result = "[['" + ds_hwxx.Tables[0].Rows[0][0].ToString() + "','" + ds_hwxx.Tables[0].Rows[0][1].ToString() + "','" + ds_hwxx.Tables[0].Rows[0][2].ToString() + "','" + ds_hwxx.Tables[0].Rows[0][3].ToString() +
                 "','" + ds_hwxx.Tables[0].Rows[0][4].ToString() + "'," + ds_hwxx.Tables[0].Rows[0][5].ToString() + "," + ds_hwxx.Tables[0].Rows[0][6].ToString() + "," + ds_hwxx.Tables[0].Rows[0][7].ToString() +
                 "," + ds_hwxx.Tables[0].Rows[0][8].ToString() + "" + "," + ds_hwxx.Tables[0].Rows[0][9].ToString() + "]" +
                 "]";
//如果hwbh有多个的话 对应的result就会有多条记录,如何让他输出象此类的格式[['10020101019000501  ','7777888','漳州','羽泉','花卉',1,0.000,3.265,1143.00,2 ]]这是只有一条记录的格式,如果有多条的话应该是
[['10020101019000501  ','7777888','漳州','羽泉','花卉',1,0.000,3.265,1143.00,2 ],['10020101019000502  ','7777888','漳州','羽泉','花卉',1,0.000,3.265,1143.00,2 ],
['10020101019000503  ','7777888','漳州','羽泉','花卉',1,0.000,3.265,1143.00,2 ],
.........................
]
        }
    
        Response.Write(result);

解决方案 »

  1.   

    foreach(DataRow row in ds.Tables[0].Rows)
    {}
      

  2.   

    组合hwbh
    string cmd2 = "select hwbh,jydxx.sxhh,sdzmc,shrxm,hwmc,hwzjs,hwztj,hwzzl,hwyf,hwzt from hwxx,jydxx where jydxx.jydbh = hwxx.jydbh and hwxx.hwbh in(" + hwbh + ")";
      

  3.   

    string hwbh = ds.Tables[0].Rows[0][0].ToString();//这边不止一个hwbh的时候咋办?
    多个也不报错,你取的是Rows[0],就是第一行。
      

  4.   

    string cmd1 = "select hwbh from fhxx where fhqdh='" + fhqdh + "'";
            DataSet ds = sqlHelp.GetDataSet(cmd1);这个执行完后 实际的hwbh 有多个记录 怎么让他循环地输出
    象此类的格式
    [['10020101019000501 ','7777888','漳州','羽泉','花卉',1,0.000,3.265,1143.00,2 ],['10020101019000502 ','7777888','漳州','羽泉','花卉',1,0.000,3.265,1143.00,2 ],
    ['10020101019000503 ','7777888','漳州','羽泉','花卉',1,0.000,3.265,1143.00,2 ],
    .........................
    ]
      

  5.   

    顶一下,我认为Rows就是一个数组,可以循环.
      

  6.   

    1楼可行    或者可以用DataReader循环读
      

  7.   

    SQLHelper sqlHelp = new SQLHelper();
            string result = "";
            string fhqdh = Request.Params["fhqdh"].ToString();
            string cmd1 = "select hwbh from fhxx where fhqdh='" + fhqdh + "'";
            DataSet ds = sqlHelp.GetDataSet(cmd1);
            
            foreach (DataRow row in ds.Tables[0].Rows)
            {
                string hwbh = ds.Tables[0].Rows[0][0].ToString();//我要怎么循环输出hwbh  用与cmd2的查询呢?            string cmd2 = "select hwbh,jydxx.sxhh,sdzmc,shrxm,hwmc,hwzjs,hwztj,hwzzl,hwyf,hwzt from hwxx,jydxx where jydxx.jydbh = hwxx.jydbh and  hwxx.hwbh ='" + hwbh + "'";
                DataSet ds_hwxx = sqlHelp.GetDataSet(cmd2);            result = "["]";
            }
      

  8.   

      protected void Page_Load(object sender, EventArgs e)
        {
            SQLHelper sqlHelp = new SQLHelper();
            string result = "";
            string fhqdh = Request.Params["fhqdh"].ToString();
            string cmd1 = "select hwbh from fhxx where fhqdh='" + fhqdh + "'";
            DataSet ds = sqlHelp.GetDataSet(cmd1);
            foreach (DataRow row in ds.Tables[0].Rows)
            {
                string hwbh = Convert.ToString(row["hwbh"].ToString());
                string cmd2 = "select hwbh,jydxx.sxhh,sdzmc,shrxm,hwmc,hwzjs,hwztj,hwzzl,hwyf,hwzt from hwxx,jydxx where jydxx.jydbh = hwxx.jydbh and  hwxx.hwbh ='" + hwbh + "'";
                DataSet ds_hwxx = sqlHelp.GetDataSet(cmd2);
                
                result = "[['" + ds_hwxx.Tables[0].Rows[0][0].ToString() + "','" + ds_hwxx.Tables[0].Rows[0][1].ToString() + "','" + ds_hwxx.Tables[0].Rows[0][2].ToString() + "','" + ds_hwxx.Tables[0].Rows[0][3].ToString() +
                     "','" + ds_hwxx.Tables[0].Rows[0][4].ToString() + "'," + ds_hwxx.Tables[0].Rows[0][5].ToString() + "," + ds_hwxx.Tables[0].Rows[0][6].ToString() + "," + ds_hwxx.Tables[0].Rows[0][7].ToString() +
                     "," + ds_hwxx.Tables[0].Rows[0][8].ToString() + "" + "," + ds_hwxx.Tables[0].Rows[0][9]+ "]" +
                     "]";
            }
        
            Response.Write(result);
            Response.End();
        }我改成了以上的代码  为什么只输出最后的一条?