使用uCanaccess检索保存在桌面中的数据库时出现错误。
我的代码如下:
package Week11Package;
导入java.util.Scanner; 导入java.sql。*;
公共类dbTest1 {
static Scanner input = new Scanner (System.in); static String url; static Connection aConnection; static Statement aStatement; static boolean gotIt = false; public static void main(String[] args) { dbTest1.initialize(); } public static void initialize() { //establish the DB connection. url = "jdbc:odbc:MS Access Database;DBQ=.//Teams.accdb"; try { //load the jdbc - odbc bridge for Windows Class.forName("net.ucanaccess.jdbc.UcanaccessDriver"); //create a connection instance aConnection = DriverManager.getConnection("jdbc:ucanaccess:///Users/Vince/Desktop/Teams.accdb"); //create statement object instance for this connection aStatement = aConnection.createStatement(); String sqlQuery = "SELECT PlayerID, PlayerName, TeamID " + "FROM PLAYER"+"'"; ResultSet rs = aStatement.executeQuery (sqlQuery); gotIt = rs.next(); if (gotIt) { System.out.println("Connected to DB & found Data!!!"); System.out.println("Which Player ID are you looking for?"); String stringpID = input.next(); boolean found = false; while(gotIt){ //extract the data String pID = rs.getString (1); if (pID.equals(stringpID)) found = true; String pName = rs.getString (2); String tID = rs.getString (3); System.out.println(pID+" " +pName+ " "+tID); gotIt = rs.next(); } if (found) System.out.println("The player ws found"); } aStatement.close(); aConnection.close(); } catch (ClassNotFoundException e) { System.err.println(e); } catch (SQLException e) { System.err.println(e); } }
}
我将很乐意为您解决此错误提供任何建议。
谢谢,文斯
好吧,首先,导入您的库(lib文件夹中的jar文件)。http://sourceforge.net/projects/ucanaccess/files/UCanAccess-2.0.9.1-bin.zip/download
然后检查一下。这可能会有所帮助。
Connection a = DriverManager.getConnection("jdbc:ucanaccess://C:\\Users\\Vince\\Desktop\\Teams.accdb"); Statement s = a.createStatement(); String sqlQuery = "SELECT PlayerID, PlayerName, TeamID " + "FROM PLAYER"+"'"; ResultSet rs = s.executeQuery(sqlQuery); while(rs.next()){ System.out.println("Connected to DB & found Data!!!"); }