복붙노트

[SQL] JDBC 더비 드라이버를 찾을 수 없습니다

SQL

JDBC 더비 드라이버를 찾을 수 없습니다

나는에서 JDBC 튜토리얼 따랐습니다 : http://docs.oracle.com/javase/tutorial/jdbc/basics/gettingstarted.html을하고, 구축하고 너무 많은 소란하지 않고 내 자신의 JDBC 데이터베이스를 만들 수 있었다. 그러나 지금은 때 예외를 수신하고있어 자바 응용 프로그램에서 데이터베이스에 연결을 시도 :

그런 다음 수동으로 사용하여 JDBC 드라이버를 지정하려고 할 때 :

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

나는 다음과 같은 예외 오류가 발생합니다 :

나는이 튜토리얼에 지정된 드라이버이며 그 드라이버를 사용하여 데이터베이스를 만드는 아무 문제가 없었다으로 해당 드라이버가 더 문제 로딩이없는 것을 긍정적입니다. 시도하고 새로운 데이터베이스를 생성하기 위해 연결 문의 끝에, "만들 = 사실"하지만 난 여전히 같은 예외 오류가 나는 한 이벤트는 속성을 추가했습니다.

아래에있는 내 응용 프로그램 코드를 참조하십시오. 전혀 어떤 도움 환상적인 :) 것이다.

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();
    }
}

해결법

  1. ==============================

    1.귀하의 오류가 발생할 수 있습니다 :

    귀하의 오류가 발생할 수 있습니다 :

    드라이버가 제대로로드되지 않거나 URL이 잘못되었습니다. 그래서 처음에 당신은 클래스 경로에의 .jar 당신 * 확인해야합니다. 확인 해봐.

    또한 귀하의 URL을 변경하려고 :

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

    만들 = 사실 존재하지 않는 경우 그 DB가 생성됩니다 보장합니다.

    예외 : SQLException :이 THEAD에서 봐 더비 : 없음 적합한 드라이버가 JDBC을 찾을 수 없습니다 // localhost를 : 1527

  2. ==============================

    2.당신은 이러한 유형의 오류가있는 경우

    당신은 이러한 유형의 오류가있는 경우

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

    당신은 다음이 단계를 수행 할 필요가 넷빈즈를 사용하고 있습니다 :

  3. ==============================

    3.자바 JDK는 모두 제공

    자바 JDK는 모두 제공

    org.apache.derby.jdbc.EmbeddedDriver
    org.apache.derby.jdbc.ClientDriver
    

    이클립스 프로젝트에 사용 된 JRE (JDK) 또는 명시 적으로 다음과 같은 항아리를 추가합니다.

    [JDK]db/lib/derby.jar (EmbeddedDriver)
    [JDK]db/lib/derbyclient.jar (ClientDriver)
    

    실행을 위해 당신은 전유는 Java 응용 프로그램에 사용할 항아리 만드는 데 필요한.

  4. ==============================

    4.당신은 당신이 자습서를 따랐다 고 말했다. 튜토리얼에서는 JDBC 드라이버를 설치했다.

    당신은 당신이 자습서를 따랐다 고 말했다. 튜토리얼에서는 JDBC 드라이버를 설치했다.

    당신이 실행 드라이버를 설치 한 후

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

    올바른 다이버를 엉망 경우 그에만 가능합니다.

    당신이 사용하고 있습니다

    org.apache.derby.jdbc.EmbeddedDriver
    

    드라이버를로드

    하지만 사용해야합니다

    org.apache.derby.jdbc.ClientDriver
    
  5. ==============================

    5.자세한 내용은 https://db.apache.org/derby/papers/DerbyTut/install_software.html#derby_configure에서 "설정 DERBY_INSTALL"과 "구성 임베디드 Derby"절을 참조하십시오.

    자세한 내용은 https://db.apache.org/derby/papers/DerbyTut/install_software.html#derby_configure에서 "설정 DERBY_INSTALL"과 "구성 임베디드 Derby"절을 참조하십시오.

    더비는 JavaSE 설치의 일부이며 나는 링크에 표시된 설정 환경 변수 DERBY_HOME 대신 DERBY_INSTALL했다.

    C:\> set DERBY_HOME=c:\Program Files\Java\jdk1.8.0_60\db
    C:\> set CLASSPATH=%DERBY_INSTALL%\lib\derby.jar;%DERBY_INSTALL%\lib\derbytools.jar;.
    C:\> cd %DERBY_INSTALL%\bin
    c:\Program Files\Java\jdk1.8.0_60\db\bin> setEmbeddedCP.bat
    
  6. ==============================

    6.나는 jre \ lib \ ext 디렉토리에 예를 들어에 필요한 모든 JDBC 드라이버를 가하고있다. 것이 나의 시스템에서 : X : \ 자바 \ jre1.8.0_181 \ lib 디렉토리 \ 내선 희망이 도움이.

    나는 jre \ lib \ ext 디렉토리에 예를 들어에 필요한 모든 JDBC 드라이버를 가하고있다. 것이 나의 시스템에서 : X : \ 자바 \ jre1.8.0_181 \ lib 디렉토리 \ 내선 희망이 도움이.

  7. ==============================

    7.나는 ClientDriver를 사용시 java.lang.ClassNotFoundException가를 얻고 있었다. 나는 최신 드라이버 바이너리를 사용하고, 그것은 실수였다.

    나는 ClientDriver를 사용시 java.lang.ClassNotFoundException가를 얻고 있었다. 나는 최신 드라이버 바이너리를 사용하고, 그것은 실수였다.

    아파치 사이트 : 그 당시, 최신 드라이버 바이너리는 바로 여기 10.15.1.3이었다

    나는 자바 8에있어, 나는 최대 절전 모드 5.4.2.Final를 사용합니다. 그러나, 드라이버는 자바 (9)에 대해 컴파일!

  8. ==============================

    8.나는 최근에 당신이 런타임을 만들 JLINK를 사용하는 경우, 당신은 인스턴스화하는 드라이버를 허용하는 추가 JDK 모듈을 포함 할 수도 있음을 발견했다.

    나는 최근에 당신이 런타임을 만들 JLINK를 사용하는 경우, 당신은 인스턴스화하는 드라이버를 허용하는 추가 JDK 모듈을 포함 할 수도 있음을 발견했다.

    내 경우에는 내가 이미지 내의에는 java.naming 및 java.management 모듈을 포함 할 필요가 있었다.

  9. from https://stackoverflow.com/questions/15459265/jdbc-derby-driver-not-found by cc-by-sa and MIT license