Ahoj.
Chci spojit dvě Access tabulky pomocí Left Outer Join, ale vždy mi to hodí tuto chybu:
SQL Exception: java.sql.SQLException: [Microsoft][Ovladač ODBC pro Microsoft Access] Databázový stroj Microsoft Office Access nemůže najít vstupní tabulku nebo dotaz vrty. Přesvědčte se, zda existuje a zda je název napsán správně.
Problém je ten, že to nikdy nenačte tab2 (cesta je srpávně). Ale když změním kód a pracuju pouze s tab2 (SELECT, UPDATE), tak to funguje. Jen když chci pracovat s oběma najednou, tak to nejde.
public static void main(String[] args) {
try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
String url = "jdbc:odbc:Driver={Microsoft Access Driver " +
"(*.mdb, *.accdb)};DBQ=C:\\tab1.mdb";
String url1 = "jdbc:odbc:Driver={Microsoft Access Driver " +
"(*.mdb, *.accdb)};DBQ=C:\\tab2.mdb";
Connection con = DriverManager.getConnection(url);
Connection con1 = DriverManager.getConnection(url1);
System.out.println("Conected!");
Statement stmt = null;
ResultSet rs = null;
// SQL query command
String SQL = "SELECT * FROM tab1 LEFT JOIN tab2 ON tab1.ID = tab2.ID";
stmt = con.createStatement();
rs = stmt.executeQuery(SQL);
while (rs.next()) {
System.out.println(rs.getString("ID") + " : "
+ rs.getString("Name")+ " : ");
}
con.close();
} catch (SQLException e) {
System.out.println("SQL Exception: "+ e.toString());
} catch (ClassNotFoundException cE) {
System.out.println("Class Not Found Exception: "+
cE.toString());
}
}
}