Salve a tutti, non so se è un problema relativo ad access o a java, quindi se sbaglio forum scusatemi e ditemelo subito.
Ho creato una classe java che deve eseguire delle query su un database access
codice:public class esegui { static Connection con = null; public static void main(String[] args) { try { // connessione connessione(); String sql = "SELECT * FROM tabella1"; System.out.println("ok1"); PreparedStatement ps = con.prepareStatement(sql); System.out.println("ok2"); java.sql.ResultSet rs = ps.executeQuery(); System.out.println("ok3"); while (rs.next()) { // Per ogni riga della prima tabella String sql2 = "SELECT * FROM tabella2"; ps = con.prepareStatement(sql2); java.sql.ResultSet rs1 = ps.executeQuery(); while (rs1.next()) { // vedi se l'elemento 2 che corrisponde al codice if (rs1.getString(2).equals(rs.getString(2))) { System.out.println(rs.getString(3)); } } } } catch (Exception e) { e.printStackTrace(); } } private static void connessione() { // TODO Auto-generated method stub String url="jdbc:odbc:Database1.accdb"; String driver = "sun.jdbc.odbc.JdbcOdbcDriver"; System.out.println("connessione aperta"); try { Class.forName(driver); } catch (ClassNotFoundException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } try { con = DriverManager.getConnection(url); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }
questo è il risultato:
connessione aperta
ok1
ok2
java.sql.SQLException: General error
at sun.jdbc.odbc.JdbcOdbc.createSQLException(Unknown Source)
at sun.jdbc.odbc.JdbcOdbc.standardError(Unknown Source)
at sun.jdbc.odbc.JdbcOdbc.SQLExecute(Unknown Source)
at sun.jdbc.odbc.JdbcOdbcPreparedStatement.execute(Un known Source)
at sun.jdbc.odbc.JdbcOdbcPreparedStatement.executeQue ry(Unknown Source)
at esegui.main(esegui.java:28)
come mai?
la query nn è sbagliata perchè se la eseguo su access va a buon fine, e la connessione credo che vada pure a buon fine..