在我的produtcsort表之中,字段以及值如下:PS_id               PS_name
1                   A系列
2                   B系列
3                   C系列
4                   D系列现在我有一个文本输入框输入PS_name的值,然后通过SQL语句查询取出PS_id存放到DataSet之中,我想从DataSet之中取出这个PS_id的值,请问我怎么取,下面是我的代码:
            String sql1 = "select PS_id from productsort where PS_name=" + PS_name1;
            SqlConnection conn = new SqlConnection("server=.;database=bsy;uid=bsy;pwd=********");
            SqlCommand cmd = new SqlCommand(sql1, conn);
            SqlDataAdapter da = new SqlDataAdapter(cmd);
            DataSet ds = new DataSet();
            da.Fill(ds);
            int PS_id = (int)ds.Tables[0].Rows[0][0];
调试时da.Fill(ds);这一行出现  列名 'A系列' 无效  异常(我输入A系列),请问怎么解决呢?谢谢!

解决方案 »

  1.   

    本帖最后由 net_lover 于 2012-03-31 13:22:06 编辑
      

  2.   

    int PS_id = (int)ds.Tables[0].Rows[0][0];
    应该改成
    if(ds.Tables.Count>0 && ds.Tables[0].Rows.Count>0)
    int PS_id = (int)ds.Tables[0].Rows[0][0];
      

  3.   

    String sql1 = "select PS_id from productsort where PS_name=" + PS_name1;
    这里就有问题,改为:
    String sql1 = "select PS_id from productsort where PS_name='" + PS_name1+"'";
      

  4.   

    拼接sql字符串错误,PS_name1是字符串
     String sql1 = "select PS_id from productsort where PS_name='" + PS_name1+"'";