比如:
1.select name from table where id=9  这里怎么把取出的name值赋给string类型的变量strName?
2.select name from table             这里怎么把取出的name值赋给string类型的数组strName[]?
3.select count(name) from table      这里怎么把取出的count值赋给int类型的变量一iCount?

解决方案 »

  1.   

    不能直接赋值,使用DataTable、DataSet.
      

  2.   

    1.
    string strName = SqlCommand1.ExecuteScalar().ToString();2.
    将结果放到DataSet中,
    int resCount = DataSet1.Tables[0].Rows.Count;
    string[] strName = new string[resCount];
    for(int i = 0; i < resCount; i ++)
    {
    DataRow row = DataSet1.Tables[0].Rows[i];
    strName[i] = row["name"].ToString();
    }3.
    Int32 iCcount = (int32)SqlCommand1.ExecuteScalar();
      

  3.   

    SqlCommand cmd_sql =new SqlCommand();
    cmd_sql.Connection=cnn;
    cmd_sql.CommandText="select * from table where id=12";
    try
    {
    cnn.Open();
    SqlDataReader dr=cmd_sql.ExecuteReader();
    if(dr.Read())

    strName=dr["name"].ToString();
    }
    }
    catch(Exception err)
    {
    return null;
    }
    finally
    {

    cnn.Close();
    }
    类似的解决你其它两个问题如果是多条的则用
    int i=0 ;
    while(dr.read())
    {
    strName[i]=dr["Name"].toString();
    i++;
    }而select count(name) from table 
    则改为select count(name) as cunt from table 
    最后取值为iCount=Convert.toint32(dr["cunt"].toString())