我用下面的语法想得到数据库中id值为index的记录,为什么编译时老显示数据库出错。
OleDbConnection oledb = new OleDbConnection(BallPath);
                OleDbCommand oleCom = new OleDbCommand("select * From " +tabName+ " where ID ="+index.ToString(), oledb);
                oledb.Open();
                OleDbDataReader aReader = oleCom.ExecuteReader();
                str=aReader.GetString(aReader.GetOrdinal("中奖号码"));
                aReader.Close();
                oledb.Close();

解决方案 »

  1.   


    "select * From " +tabName+ " where ID ="+"'"+index.ToString()+"'"这样试试吧
      

  2.   

    我觉得应该是select语句出错啦,但不知道错在哪里
      

  3.   

    你短点调试,把【("select * From " +tabName+ " where ID ="+index.ToString()】的即时值放到查询分析器里执行就知道是不是查询语句有没有问题了
      

  4.   

       oledb.Open();
    OleDbCommand oleCom = new OleDbCommand("select * From " +tabName+ " where ID ="+index.ToString(), oledb); 
    这样试一下..             
      

  5.   

    那就把SQL语句单写出来放到查询分析器里看看。。
    另外你的数据库连接是否正确呀?能正常连上数据库吗?
      

  6.   

    string strSql = "select * From " + tableName + " where ID = '"+ index.ToString() +"'";
      

  7.   

    1.检查tabName变量,确定数据库里面有tabName的表名
    2.建议对id上面加中括号写成[id]进行查询