未找到 JDBC Derby 驱动程序

新手上路,请多包涵

我遵循了位于 http://docs.oracle.com/javase/tutorial/jdbc/basics/gettingstarted.html 的 JDBC 教程,并设法轻松地构建和创建了我自己的 JDBC 数据库。但是现在当我尝试从 Java 应用程序连接到数据库时收到异常:

java.sql.SQLException: 找不到适合 jdbc:derby: db 目录 的驱动程序

然后在尝试使用以下方法手动指定 JDBC 驱动程序时:

 Class.forName("org.apache.derby.jdbc.EmbeddedDriver");

我收到以下异常错误:

java.lang.ClassNotFoundException:org.apache.derby.jdbc.EmbeddedDriver

我确信该驱动程序应该没有加载问题,因为它是教程中指定的驱动程序,并且使用该驱动程序创建数据库没有问题。我曾尝试在连接语句的末尾添加属性“;create=true”来尝试创建一个全新的数据库,但我仍然收到相同的异常错误。

请在下面查看我的应用程序代码。任何帮助都会很棒 :)。

 package com.ddg;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public class SQLConnect
{
    Connection Conn = null;
    String URL;
    String Username;
    String Password;

    public SQLConnect()
    {
        try
        {
            Class.forName("org.apache.derby.jdbc.EmbeddedDriver");
        }
        catch (ClassNotFoundException e)
        {
            System.out.println(e.toString());
        }
        URL = "jdbc:derby:*directory name*";

        System.out.println("Created SQL Connect");
    }

    public void CreateConnection()
    {
        try
        {
            Conn = DriverManager.getConnection(URL);
            System.out.println("Successfully Connected");
        }
        catch (SQLException e)
        {
            System.out.println(e.toString());
        }
    }

    public void CloseConnection()
    {
        try
        {
            this.Conn.close();
            System.out.println("Connection successfully closed");
        }
        catch (SQLException e)
        {
            System.out.println(e.toString());
        }
    }

    public static void main(String args[])
    {
        SQLConnect sql = new SQLConnect();
        sql.CreateConnection();
        sql.CloseConnection();
    }
}

原文由 Ice Phoenix 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 744
2 个回答

java.sql.SQLException:找不到适合 jdbc:derby:db 目录的驱动程序

所以你的错误可能是由于:

驱动程序未正确加载或您的 URL 格式错误。所以首先你需要确保你的 *.jar 在类路径中。一探究竟。

还尝试将您的 URL 更改为:

 jdbc:derby://<path>/<databasename>;create=true

create=true 将确保如果不存在将创建数据库。

更新:

也看看这个 thead: SQLException: No suitable driver found for jdbc:derby://localhost:1527

原文由 Simon Dorociak 发布,翻译遵循 CC BY-SA 3.0 许可协议

如果您遇到此类错误

java.lang.ClassNotFoundException: org.apache.derby.jdbc.ClientDriver

并且您正在使用 netbeans 那么您必须执行以下步骤:

  1. 右键单击库
  2. 选择添加库选项并从库列表中选择 “Java DB Driver”

在此处输入图像描述

原文由 Mamta Aluria 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
logo
Stack Overflow 翻译
子站问答
访问
宣传栏