Blackberry89 Ответов: 2

[Microsoft][диспетчер драйверов ODBC] Недопустимое состояние курсора


Привет

Я пытаюсь получить доступ к базе данных Microsoft acess и получаю следующую ошибку:
[Microsoft][ODBC Driver Manager] Invalid cursor state


Мой код выглядит следующим образом
import java.sql.*;


class Test
{
 public static void main(String[] args)
 {
 try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

Connection con = DriverManager.getConnection("jdbc:odbc:Cont","","");
Statement s = con.createStatement();
ResultSet rset = s.executeQuery("SELECT * FROM Customer");
//ResultSet rset = s.getResultSet();

while(rset.next());
{
	System.out.exp.printStackTrace(rset.getString("ID") +" " + rset.getString("Name") +" " +
			rset.getString("Email") + " " +
			rset.getInt("Comments")); 
}

 }
 catch (ClassNotFoundException exp) {
System.err.println(exp);

 }
 catch(SQLException exp)
 {
	 System.err.println(exp);
 }
 }
}


Любая помощь будет оценена по достоинству

Спасибо

2 Ответов

Рейтинг:
0

Henry Minute

Взгляните на это этот[^] поток, где у кого-то была такая же ошибка.

Обратите особое внимание на while петля и пара строк перед ней. (этот beforefirst() вызов)

Из этого я заключил, что курсор перемещается за конец результирующего набора при выполнении запроса.


Рейтинг:
0

Member 14873640

Может быть, попробуем это сделать

Оператор s = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCURR_READ_ONLY);