同上,他返回一个标量值,是不是只返回一个数值

解决方案 »

  1.   

    比如
    SqlCommand ordersCMD = new SqlCommand("SELECT Count(*) FROM Orders", nwindConn);Int32 count = (Int32)ordersCMD.ExecuteScalar();cont只是一个数值吗,
      

  2.   

    其实他就是开一个DataReader,读第一行第一列。object ExecuteScalar()
    {
      IDataReader dr = this.ExecuteDataReader();
      if ( !dr.Read() )
        return null;
      else
        return dr[0];
    }
      

  3.   

    object ExecuteScalar()
    {
      using ( IDataReader dr = this.ExecuteDataReader() )
      {
        if ( !dr.Read() )
          return null;
        else
          return dr[0];
      }
    }
      

  4.   

    它返回 object 
    然后 (int)object 即可