在 SqlDataReader dr=sqlcom.ExecuteReader();后面加
int num=0;
if(dr.read())
    num=Convert.ToInt32(dr[0].ToString());
----
ok

解决方案 »

  1.   

    当然会出错,你的SqlDataReader实例没有调用read,应该如下:SqlCommand sqlcom=new SqlCommand("select max(ProductID) from 商品信息表",sqlcon);
    sqlcon.Open();
    SqlDataReader dr=sqlcom.ExecuteReader();
    int num=0;
    if(dr.Read())
      num=dr.GetInt32(0);
    else
      MessageBox.Show("No data in DB");
                
    sqlcon.Close();}
      

  2.   

    先要调用 SqlDataReader.read()方法.
    if (dr.read())
    {
        int num=dr.GetInt32(0);
    }
      

  3.   

    select max(编号) from ……