1、存在问题的代码:

foreach (DataColumn ukColumn in ukColumns){

  string sqlstr = "select *** from tablename where ***";

  OleDbCommand command = new OleDbCommand(sqlstr, bitsConn);

  OleDbDataReader reader = command.ExecuteReader();

  reader.Read();

    typestr = reader[0].ToString().Substring(0, 3);

    *****

  reader.Close();

}

 

2、出错点:OleDbDataReader reader = command.ExecuteReader(); 错误信息:游标溢出。

 

3、解决方案一:

  增加代码:command.dispose();

 

4、解决方案二:

     使用代码:useing(OleDbCommand command = new OleDbCommand(sqlstr, bitsConn);)

      using 语句允许程序员指定使用资源的对象应当何时释放资源。为 using 语句提供的对象必须实现 IDisposable 接口。此接口提供了 Dispose 方法,该方法将释放此对象的资源。


                    OleDbCommand command = new OleDbCommand(sqlstr, bitsConn);
                    OleDbDataReader reader = command.ExecuteReader();
                    reader.Read();
                    {
                    }
                    typestr = reader[0].ToString().Substring(0, 3);
                    reader.Close();foreach (DataColumn ukColumn in ukColumns)

相关文章:

  • 2022-12-23
  • 2022-01-24
  • 2022-01-31
  • 2021-06-20
  • 2021-12-03
  • 2021-09-24
  • 2021-05-20
  • 2021-05-15
猜你喜欢
  • 2021-10-17
  • 2022-12-23
  • 2022-12-23
  • 2021-12-02
  • 2022-12-23
  • 2021-11-06
相关资源
相似解决方案