数据库中 有一个库存表,,分别有 ID 和 数量 属性
如果在C#里查询代表 数量的列呢?  string strConnection="Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+Server.MapPath("dnpj.mdb");
con = new OleDbConnection(strConnection);
con.Open();
string str = "select shuliang from 库存";
OleDbCommand cmd = new OleDbCommand(str,con);
OleDbDataReader der ;
der = cmd.ExecuteReader();

//while(der.Read())
//{
der.Read();
Response.Write("<li>");
Response.Write( der[0]);//会不会是这里错了?
// }
der.Close();
con.Close();  
编译没错.运行没错..但最后出来的结果老是为0..... 

解决方案 »

  1.   

    der[0]应该是选择的字段值吧你没选 直接while 当然是0
      

  2.   

    如果这个没有异常并且真的有结果输出的话,那么,0就是结果了! 首先应该判断der.Read()的返回值,如果结果集为空的话,就不能执行下面的读取操作。而你这个恰恰没有问题,也就是说--有结果。你再看看你的SQL语句写的是否正确
      

  3.   

    原来是这个出问题了.
    string str = "select shuliang from 库存";应该写为
    string str = "select shuliang from [库存]";
    这样就正确了