我在Netbeans中收到此错误:
java.sql.SQLException: No suitable driver found for jdbc:derby://localhost:1527/
Run Code Online (Sandbox Code Playgroud)
这是怎么造成的,我该如何解决?
Pas*_*ent 26
java.sql.SQLException:没有为jdbc找到合适的驱动程序:derby:// localhost:1527 /
此异常有两个原因:
在您的情况下,我希望在连接字符串的末尾看到一个数据库名称.例如(create=true如果您希望在不存在的情况下创建数据库,请使用):
jdbc:derby://localhost:1527/dbname;create=true
Run Code Online (Sandbox Code Playgroud)
默认情况下,在启动网络服务器的目录中创建数据库.但您也可以指定数据库位置的绝对路径:
jdbc:derby://localhost:1527//home/pascal/derbyDBs/dbname;create=true
Run Code Online (Sandbox Code Playgroud)
为了以防万一,请检查derbyclient.jar是否在类路径上,并且org.apache.derby.jdbc.ClientDriver在服务器模式下工作时正在加载相应的驱动程序.
Bru*_*ard 11
为了我
DriverManager.registerDriver(new org.apache.derby.jdbc.EmbeddedDriver());
Run Code Online (Sandbox Code Playgroud)
帮助.通过这种方式,DriveManager确实知道了derby EmbeddedDriver.也许分配一个新的EmbeddedDriver很重,但另一方面,Class.forName需要try/catch/doSomethingIntelligentWithException,我不太喜欢.
JDBCDriverManager找不到任何适合Driver给定的连接 URL。连接数据库之前根本没有加载 JDBC 驱动程序,或者连接 URL 错误。由于连接 URL 看起来不错,我敢打赌驱动程序根本没有加载。在连接数据库之前,您需要在应用程序启动期间加载驱动程序。对于 Apache Derby,驱动程序类名称是org.apache.derby.jdbc.ClientDriver。所以:
Class.forName("org.apache.derby.jdbc.ClientDriver");
Run Code Online (Sandbox Code Playgroud)