明月夜ll 2016-04-26 09:17 采纳率: 50%
浏览 1532

java 连接 access数据库问题

方法如下:
public List> queryProject(String path) throws SQLException {
//加载驱动
try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
} catch (ClassNotFoundException e) {
e.printStackTrace();
return null;
}
String dbUrl = "jdbc:odbc:driver={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=" + path;
Connection conn = DriverManager.getConnection(dbUrl);
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("select InstanceID, name from Project");
List> results = new ArrayList>();
while(rs.next()){
Map rst = new HashMap();
rst.put("InstanceID", rs.getString(1));
rst.put("name", rs.getString(2));
results.add(rst);
//System.out.println(rs.getString(1)+"-->"+rs.getString(2));
}
rs.close();
stmt.close();
conn.close();
return results;
}
断点调试,发现在执行Connection conn = DriverManager.getConnection(dbUrl);代码时,报如下错误:
java.sql.SQLException: [Microsoft][ODBC Microsoft Access Driver] 超出系统资源。
at sun.jdbc.odbc.JdbcOdbc.createSQLException(JdbcOdbc.java:6957)
at sun.jdbc.odbc.JdbcOdbc.standardError(JdbcOdbc.java:7114)
at sun.jdbc.odbc.JdbcOdbc.SQLDriverConnect(JdbcOdbc.java:3073)
at sun.jdbc.odbc.JdbcOdbcConnection.initialize(JdbcOdbcConnection.java:323)
at sun.jdbc.odbc.JdbcOdbcDriver.connect(JdbcOdbcDriver.java:174)
at java.sql.DriverManager.getConnection(DriverManager.java:582)
at java.sql.DriverManager.getConnection(DriverManager.java:207)

这个问题该如何解决呢?
  • 写回答

4条回答 默认 最新

  • 明月夜ll 2016-04-26 09:24
    关注

    求解答啊!!!!大神在哪。。。

    评论

报告相同问题?

悬赏问题

  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器