import java.sql.*;public class CoalTotals { /**
 * @param args
 */
public static void main(String[] args) {
// TODO Auto-generated method stub try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
String url = "jdbc:odbc:Driver={MicroSoft Access Driver *.mdb)};DBQ =E:\\Dev\\WorkSpace\\chapter21\\bin\\qq.mdb";
try {
Connection conn=DriverManager.getConnection(url,"","");
Statement st = conn.createStatement();
            ResultSet rec = st.executeQuery(
                "select * " +
                "from Coal " +
                "where " +
                "(Country='" + args[0] + "') " +
                "ORDER BY Year");
            System.out.println("FIPS\tCOUNTRY\tYEAR\t" +
                "ANTHRACITE PRODUCTION");
            while(rec.next()) {
             System.out.println(rec.getString(1) +  "\t"
             + rec.getString(2) + "\t"
             + rec.getString(3) + "\t"
             + rec.getString(4));
            }
            st.close();
            
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

}}为什么显示这个错误呢  不是都正确吗 这样已经写了driver应该不用再在控制面板里配置odbc了吧

解决方案 »

  1.   

    String url = "jdbc:odbc:Driver={MicroSoft Access Driver *.mdb)};DBQ =E:\\Dev\\WorkSpace\\chapter21\\bin\\qq.mdb";少了个括号自己改好了 String url = "jdbc:odbc:Driver={MicroSoft Access Driver (*.mdb)};DBQ =E:\\Dev\\WorkSpace\\chapter21\\bin\\qq.mdb";可是现在又java.sql.SQLException: [Microsoft][ODBC Microsoft Access Driver] 文件名无效。
    at sun.jdbc.odbc.JdbcOdbc.createSQLException(Unknown Source)
    at sun.jdbc.odbc.JdbcOdbc.standardError(Unknown Source)
    at sun.jdbc.odbc.JdbcOdbc.SQLDriverConnect(Unknown Source)
    at sun.jdbc.odbc.JdbcOdbcConnection.initialize(Unknown Source)
    at sun.jdbc.odbc.JdbcOdbcDriver.connect(Unknown Source)
    at java.sql.DriverManager.getConnection(Unknown Source)
    at java.sql.DriverManager.getConnection(Unknown Source)
    at CoalTotals.main(CoalTotals.java:15)