我使用名为“Test”的Java DB创建了一个新数据库,我尝试使用java DB Embedded驱动程序创建连接,但是当我在数据库名称中输入Test并添加用户名并传递并按OK时,会出现错误:
“无法添加连接。无法使用org.apache.derby.jdbc.EmbeddedDriver建立与jdbc.derby.Test的连接(数据库'未找到测试')”
为什么我收到此消息?
然后,当我编写代码时
String conStr = "jdbc:derby:Test";
String driver2 = "org.apache.derby.jdbc.EmbeddedDriver";
try {
Class.forName(driver2);
System.out.println("driver");
} catch (ClassNotFoundException e1) {
e1.printStackTrace();
}
try {
Properties props = new Properties();
props.put("user", "sahar");
props.put("password", "123456");
//Connection conn = DriverManager.getConnection(conStr);
Connection conn = DriverManager.getConnection(conStr,props);
System.out.println("connect ");
} catch (SQLException e) {
e.printStackTrace();
}
它抛出异常“数据库'测试'未找到”
答案 0 :(得分:3)
如果您确实创建了本地数据库,请尝试指向绝对文件名而不是相对文件名。
Unix: jdbc:derby:/srv/databases/Test Windows: jdbc:derby:c:/databases/Test
更好的方法是通过Derby网络服务器访问数据库
答案 1 :(得分:1)
没有看到代码就很难猜到,但也许你的连接字符串需要create=true
。
final String connectionURL = "jdbc:derby:" + dbName + ";create=true";
(我将这个副本从我使用嵌入式数据库的应用程序中删除并粘贴。)