我正在尝试使用此Java程序创建一个新的SQL数据库
import java.sql.*; //Needed for JDBC classes
public class BuildPhonebookDB {
public static void main(String[] args) throws Exception{
//Create a named constant for the URL
final String DB_URL = "jdbc:derby:Phonebook;create=true";
try {
//Create a connection to the database.
Connection conn = DriverManager.getConnection(DB_URL);
//Create a Statement object.
Statement stmt = conn.createStatement();
//Create the Entries table
stmt.execute("CREATE TABLE Entries (" +
"Name CHAR(20)"+
"Number INTEGER)"
);
System.out.println("Database Connected");
//Close the connection
conn.close();
}
catch(Exception ex) {
System.out.println(ex.getMessage());
}
}
}
当我尝试运行程序时,出现错误:
找不到合适的jdbc驱动程序:derby:Phonebook; create = true
我已经查看了Stack Overflow上的各种其他类似帖子,例如this one,但没有帮助。我看过有关司机罐的事情,但我不知道这是什么,如果我需要编辑它,有人可以帮我解决吗?
感谢您的帮助
答案 0 :(得分:3)
您是否看到了此guide并且您是否已完成本指南的所有步骤?
Apache Derby
下载Derby从中下载二进制Apache Derby发行版 德比网站http://db.apache.org/derby/derby_downloads.html。 这些教程说明使用版本10.12.1.1并假设您 下载了表中列出的二进制分发文件之一 下面:
操作系统下载文件Windows db-derby-10.12.1.1-bin.zip UNIX,Linux和Mac db-derby-10.12.1.1-bin.tar.gz如果是更新的 发布可用,下载,然后替换该版本 以下说明中的10.12.1.1编号。
安装Derby选择要安装的目录 德比软件。您必须具有此目录的写入权限。该 下面的示例说明使用C:\ Apache for Windows和/ opt / Apache 对于UNIX;一定要使用你的实际位置。复制软件 分配到您选择的位置,然后如图所示提取它 下方。
Windows(使用提取工具,例如WinZip - 这些说明 使用mks unzip):
mkdir C:\Apache copy db-derby-10.12.1.1-bin.zip
> C:\Apache cd C:\Apache unzip db-derby-10.12.1.1-bin.zip
UNIX:
mkdir /opt/Apache cp db-derby-10.12.1.1-bin.tar.gz /opt/Apache
> cd /opt/Apache tar xzvf db-derby-10.12.1.1-bin.tar.gz
在这两种情况下,软件现在都将被提取到一个子目录中 名为db-derby-10.12.1.1-bin。
设置DERBY_INSTALL将DERBY_INSTALL变量设置为其中的位置 你安装了Derby。示例如下所示,但一定要使用 您系统上的实际位置:
Windows:
C:\> set DERBY_INSTALL=C:\Apache\db-derby-10.12.1.1-bin
UNIX Korn Shell:
$ export
> DERBY_INSTALL=/opt/Apache/db-derby-10.12.1.1-bin
配置嵌入式Derby要在嵌入式模式下使用Derby,请设置 CLASSPATH包含下面列出的jar文件:
derby.jar:包含Derby引擎和Derby Embedded JDBC driver derbytools.jar:optional,提供使用的ij工具 本教程中的几个部分您可以设置CLASSPATH 明确地使用下面显示的命令:
Windows:
C:\> set
> CLASSPATH=%DERBY_INSTALL%\lib\derby.jar;%DERBY_INSTALL%\lib\derbytools.jar
UNIX:
$ export
> CLASSPATH=$DERBY_INSTALL/lib/derby.jar:$DERBY_INSTALL/lib/derbytools.jar:.
... 第3步:嵌入式德比
当应用程序使用Embedded Derby访问Derby数据库时 JDBC驱动程序,Derby引擎不在单独的进程中运行,并且 没有单独的数据库进程来启动和关闭。 相反,Derby数据库引擎在同一Java Virtual内部运行 Machine(JVM)作为应用程序。所以,德比成为了一部分 应用程序就像应用程序使用的任何其他jar文件一样。 图1描绘了这种嵌入式架构。
设置环境
要设置环境,请按照" Configure Embedded Derby" 指令。
答案 1 :(得分:2)
在从驱动程序获得连接之前使用此选项: 的Class.forName( “org.apache.derby.jdbc.ClientDriver”)的newInstance();