Java net.ucanaccess.jdbc.UcanaccessSQLException:授权规范无效-找不到:
我试图使用ucanacces从数据库中填充一个表,但它给了我以下错误,我不明白为什么,在谷歌搜索这个错误时,大多数人提到了用户名和密码,但我不明白这有什么关系,因为我没有在整个应用程序中使用用户名和密码 错误(这是全部错误,我不知道为什么它只在“:”之后结束): 代码:Java net.ucanaccess.jdbc.UcanaccessSQLException:授权规范无效-找不到:,java,sql,ucanaccess,Java,Sql,Ucanaccess,我试图使用ucanacces从数据库中填充一个表,但它给了我以下错误,我不明白为什么,在谷歌搜索这个错误时,大多数人提到了用户名和密码,但我不明白这有什么关系,因为我没有在整个应用程序中使用用户名和密码 错误(这是全部错误,我不知道为什么它只在“:”之后结束): 代码: 显示消息“无效授权规范-未找到:”,因为您试图与用户一起访问数据库,但该用户找不到,在您的情况下为“” 因此,您必须输入有效的凭据 con = DriverManager.getConnection( DB , "<use
显示消息“无效授权规范-未找到:”,因为您试图与用户一起访问数据库,但该用户找不到,在您的情况下为“” 因此,您必须输入有效的凭据
con = DriverManager.getConnection( DB , "<user>", "<password>");
尝试运行
console.bat
或console.sh
(与ucanaccess-2.0.9.4.jar文件位于同一文件夹中)。出现提示时,为其提供相关数据库的完整路径,并查看结果是否提供了更多信息。此外,请将您的问题显示给我们您的连接URL(在DB
)。它给了我一个它可以加载的东西的列表:我很确定它可以访问数据库,因为它在应用程序的其他部分工作。文件名中的空间有问题吗?正如我在前面的评论中提到的,它不应该是因为数据库连接在应用程序的其他部分工作
final static String DBPAD = "src/Attachments/Database SOFO.mdb";
final static String DB = "jdbc:ucanaccess://" +DBPAD;
public void HaalKlantNamen(){
Connection con;
Statement s;
ResultSet rs = null;
DefaultTableModel table = (DefaultTableModel) NewOrder.table.getModel();
try {
con = DriverManager.getConnection( DB ,"","");
s = con.createStatement();
rs = s.executeQuery("select * from Item");
if (rs != null)
while ( rs.next() ) {
String[] product = new String[2];
product[0] = rs.getString("ItemSoort");
product[1] = rs.getString("Naam");
table.addRow(product);
}
s.close();
con.close();
}
catch (SQLException e) {
System.out.println("Error2: " + e);
}
}
con = DriverManager.getConnection( DB , "<user>", "<password>");
con = DriverManager.getConnection( DB );