java db download




SQLException: Kein geeigneter Treiber für jdbc gefunden: derby:// localhost: 1527 (12)

java.sql.SQLException: Kein geeigneter Treiber für jdbc gefunden: derby: // localhost: 1527 /

Diese Ausnahme hat zwei Ursachen:

  • Der Treiber ist nicht geladen.
  • Die JDBC-URL ist fehlerhaft.

In Ihrem Fall würde ich erwarten, einen Datenbanknamen am Ende der Verbindungszeichenfolge zu sehen. Zum Beispiel (benutze create=true wenn die Datenbank erstellt werden soll, wenn sie nicht existiert):

jdbc:derby://localhost:1527/dbname;create=true

Datenbanken werden standardmäßig in dem Verzeichnis erstellt, in dem der Netzwerkserver gestartet wurde. Sie können jedoch auch einen absoluten Pfad zum Datenbankspeicherort angeben:

jdbc:derby://localhost:1527//home/pascal/derbyDBs/dbname;create=true

Und nur für den Fall, dass derbyclient.jar auf dem Klassenpfad ist und dass Sie den entsprechenden Treiber org.apache.derby.jdbc.ClientDriver wenn Sie im Server-Modus arbeiten.

Ich erhalte diesen Fehler in Netbeans:

java.sql.SQLException: No suitable driver found for jdbc:derby://localhost:1527/

Wie wird das verursacht und wie kann ich es lösen?


Der JDBC DriverManager kann für die angegebene Verbindungs-URL keinen geeigneten Driver finden. Entweder wird der JDBC-Treiber überhaupt nicht geladen, bevor die DB verbunden wird, oder die Verbindungs-URL ist falsch. Da die Verbindungs-URL gut aussieht, wette ich, dass der Treiber überhaupt nicht geladen ist. Sie müssen den Treiber während des Startvorgangs der Anwendung laden, bevor Sie die Datenbank verbinden. Für Apache Derby lautet der Name der org.apache.derby.jdbc.ClientDriver . Damit:

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

Dieser Fehler tritt auf, wenn die Syntax der Verbindungszeichenfolge nicht gültig ist.

Sie können die Verbindungszeichenfolge als verwenden

'jdbc:derby:MyDbTest;create=true'

oder

Sie können den folgenden Befehl in der Eingabeaufforderung verwenden, der folgende Befehl erstellt eine neue Datenbank namens MyDbTest erfolgreich:

connect 'jdbc:derby:MyDbTest;create=true';

Es ist auch möglich, dass in der Datei persistence.xml EmbeddedDriver verwendet wurde, während die jdbc-URL auf den Derby-Server zeigte. In diesem Fall ändern Sie einfach die URL in den Pfad der Datenbank.


Hinweis: Sie können es von here herunterladen.

Wenn Sie es nicht finden können, dann

  1. Suchen Sie Ihr Projekt auf der Registerkarte Projektauswahl

  2. Rechtsklick auf "Bibliotheken"

  3. Klicken Sie auf "JAR / Ordner hinzufügen ..."

  4. Wählen Sie "derbyclient.jar"

  5. Klicke auf "Öffnen", dann wirst du "derbyclient.jar" unter deinen "Bibliotheken" sehen

Stellen Sie sicher, dass Ihre URL, der Benutzername und das Passwort korrekt sind, und führen Sie Ihren Code aus :)


Ich bin gerade auf dieses Problem gestoßen, habe alle obigen Vorschläge ausprobiert, bin aber trotzdem gescheitert. Ohne zu wiederholen, was oben vorgeschlagen wurde, hier sind die Dinge, die ich (Sie) möglicherweise fehlen: Falls Sie Maven verwenden, werden Sie wahrscheinlich die Abhängigkeiten angeben, dh:

<groupId>org.apache.derby</groupId>
<artifactId>derbyclient</artifactId>
<version>10.10.1.1</version>

Bitte sei vorsichtig mit der Version. Es muss mit der Serverinstanz kompatibel sein, die Sie ausführen.

Ich löste meinen Fall, indem ich aufgab, welche Mavenabhängigkeiten zur Verfügung gestellt wurden, und manuell ein externes Jar von "% JAVA_HOME% \ db \ lib", der gleichen Quelle meines laufenden Servers, hinzufügte. In diesem Fall teste ich mit meinem Local.

Wenn Sie mit einer Remote-Server-Instanz testen, suchen Sie nach der Derbyclient.jar, die mit dem Server-Paket geliefert wird.


Ich habe das gelöst, indem ich der Bibliothekskonsole unter meinem Projekt eine Bibliothek hinzugefügt habe:

  • Rechtsklick und dann Bibliothek hinzufügen
  • Füge JAVA DB TREIBER hinzu.

Mein Projekt funktioniert!


Ich hatte das gleiche Problem, als ich Java-Anwendung auf Netbeans schrieb. Hier ist die Lösung:

  1. Suchen Sie Ihr Projekt auf der Registerkarte Projektauswahl

  2. Rechtsklick auf "Bibliotheken"

  3. Klicken Sie auf "JAR / Ordner hinzufügen ..."

  4. Wählen Sie "derbyclient.jar"

  5. Klicke auf "Öffnen", dann wirst du "derbyclient.jar" unter deinen "Bibliotheken" sehen

  6. Stellen Sie sicher, dass Ihre URL, der Benutzername und das Passwort korrekt sind, und führen Sie Ihren Code aus :)


Ich stand vor demselben Problem. Mir fehlte der Aufruf DriverManager.registerDriver (), bevor die Verbindung mithilfe der Verbindungs-URL und der Benutzeranmeldeinformationen abgerufen wurde.

Es wurde unter Linux wie folgt behoben:

DriverManager.registerDriver(new org.apache.derby.jdbc.ClientDriver());
connection = DriverManager.getConnection("jdbc:derby://localhost:1527//tmp/Test/DB_Name", user, pass);

Für Windows:

DriverManager.registerDriver(new org.apache.derby.jdbc.ClientDriver());
connection = DriverManager.getConnection("jdbc:derby://localhost:1527/C:/Users/Test/DB_Name", user, pass);

Möglicherweise fehlen Sie, um den Derby-Server zu starten. Sobald ein Derby-Server gestartet wird, beginnt er den Standard-Port 1527 zu hören.

Das Start-Skript befindet sich wie folgt:

Windows:

    <DERBY_INSTALLATION_DIRECTORY>/bin/startNetworkServer.bat

Linux:

    <DERBY_INSTALLATION_DIRECTORY>/bin/startNetworkServer

Wenn Sie Embedded Derby verwenden, benötigen Sie Derby.jar in Ihrem Klassenpfad.


Wenn die Datenbank erstellt wurde und Sie die Verbindung mit der Datenbank hergestellt haben, müssen Sie den Treiber-Jar hinzufügen. Klicken Sie im Projektfenster mit der rechten Maustaste auf den Bibliotheksordner, gehen Sie zu c: programsfiles \ sun \ javadb \ lib \ derbyclient.jar. Lade die Datei und du solltest in der Lage sein zu laufen.

Alles Gute





derby