java.sql.SQLException: General error
Immer java.sql.SQLException
java.sql.SQLException: General error
at sun.jdbc.odbc.JdbcOdbc.createSQLException(JdbcOdbc.java:6986)
at sun.jdbc.odbc.JdbcOdbc.standardError(JdbcOdbc.java:7114)
at sun.jdbc.odbc.JdbcOdbc.SQLExecDirect(JdbcOdbc.java:3110)
at sun.jdbc.odbc.JdbcOdbcStatement.execute(JdbcOdbcStatement.java:338)
at sun.jdbc.odbc.JdbcOdbcStatement.executeQuery(JdbcOdbcStatement.java:253)
at com.test.Temp.main(Temp.java:29)
Ich bin mit dem folgenden code
Connection con=null;
ResultSet rs=null;
Statement stmt=null;
try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
con=DriverManager.getConnection("jdbc:odbc:locator","locator","locator");
stmt=con.createStatement();
System.out.println("Before query");
String query=null;
query="select * from user_location_table";
System.out.println("after query12");
rs=stmt.executeQuery(query);
//perform certain operation....
rs.close();
stmt.close();
con.close();
} catch(Exception e) {
e.printStackTrace();
}
Ausnahme wird geworfen stmt.executeQuery(query)
.
user_location_table enthält folgende Felder
user_id:number not null,
latitude:number,
longitude:number,
update_time:timestamp(6)
Vielen Dank im Voraus
- Dies ist wahrscheinlich auf einen Fehler beim Zugriff auf die Datenbank. Passiert es konsequent? Haben Sie gewährleistet die Verbindung zur Datenbank korrekt?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich es bekommen.
Der Fehler ausgelöst wird durch die Verwendung des Datentyps timestamp(6) in update_time.Die exception wird geworfen, wenn wir versuchen, das ausführen der select-Anweisung enthält eine Spalte mit dem Zeitstempel als den Datentyp.
Statt der bisherigen code, den wir verwenden können Sie den folgenden code für die Auswahl
Diese funktioniert einwandfrei,ich habe es getestet.
Prost!!
Ein paar Gedanken. Wenn es nur passiert auf dem ersten ausführen, kann es sein, dass es etwas ist ungültig in der db und es wird erarbeitet. Zweitens, Sie haben etwas undicht, weil Sie nicht schließen Sie Ihre Verbindung, und die Anweisung in einem finally-block. Also, wenn Sie eine Ausnahme, Sie sind nicht schließen Sie die verbindungen, und möglicherweise erstellen Sie eine Sperre auf Ihrer DB.
Hinzufügen eines finally-Blocks, und bewegen Sie Ihre Aussagen schließen es null: