Java und MySql... "No suitable Driver..."

Status
Nicht offen für weitere Antworten.

yeti

Mitglied
Hallo,

ich beschäftige mich neu mit dem Thema eine MySql DB in Java abzufragen.
Habe einen Beispielcode für meine ersten Tests gefunden und versuche mich daran. Das was ich bisher im Netz gelesen habe ist nun mein bisheriges Ergebnis.

Ich arbeite hier mit Win2K und XAMPP. Die DB Studentprofiles ist vorhanden und enthält eine Tabelle mit Daten. Mit Openoffice konnte ich eine Verbindung zu dieser DB herstellen.

Beipielcode:
Java:
import java.sql.*;

public class mysql1 {
  public static void main(String args[]) {
    treiber_laden();
    daten_ausgeben();
  }

  public static void treiber_laden() {
    try {
      Class.forName("com.mysql.jdbc.Driver");
    }
    catch (Exception e) {
      System.out.println(e.getMessage());
    }
  }

  public static void daten_ausgeben() {
    try {
      Connection con = DriverManager.getConnection(
         "jdbc:mysql://localhost/studentprofiles","root","");
      Statement stmt = con.createStatement();
      ResultSet rslt = stmt.executeQuery("select * from weblinks");
      while (rslt.next()) {
	 System.out.println(rslt.getInt(1) + "\t" + rslt.getString(2) +
            "\t" + rslt.getString(3) + "\t" + rslt.getDate(5));
      }
      stmt.close();
      con.close();
    }
    catch (Exception e) {
      System.out.println(e.getMessage());
    }
  }
}

Ich habe diesen Treiber runtergeladen:
mysql-connector-java-5.1.10-bin.jar

In dieses Verzeichnis kopiert:
c:\programme\java\jdk1.6.0_10\jre\lib\ext

Habe ebenso eine neue Umgebungsvariable "CLASSPATH" mit folgendem Inhalt erzeugt:
c:\programme\java\jdk1.6.0_10\bin;c:\programme\java\jdk1.6.0_10\jre\lib\ext;F:\java\mysql

Ich starte das ganze in der Eingabeaufforderung und bekommen folgende Fehlermeldung:
com.mysql.jdbc.Driver
No suitable driver found for jdbc:mysql://localhost/studentprofiles

Irgendetwas fehlt mir noch und ich komme nicht drauf, was das sein könnte.
Könnt ihr mir einen Tipp geben?

Vielen Dank im voraus und viele Grüße
Yeti
 

L-ectron-X

Gesperrter Benutzer

yeti

Mitglied
Das sollte man niemals machen. Entweder den Treiber auspacken und dann mit zu den eigenen Klassen legen, oder meiner Meinung nach viel besser: Den Treiber nebem die eigene Jar-Datei legen/ausliefern und im Manifest im Class-Path aufführen.

Das verstehe ich nicht. Manifest?
Zu 1.
Wenn ich die jar-Datei entpacke und den Inhalt mit in mein Projektverzeichnis F:\java\mysql kopiere... meinst du das?

Zu 2.
jar-Datei nicht auspacken und wohing kopieren? Was meinst du mit Manifest? Ich trage den Classpath über die Eigenschaften des Arbeitsplatzes direkt in die Umgebungsvariablen ein.


Hab ich schon gemacht und daraufhin auch meine bisherige Codezeile:
...
Code:
"jdbc:mysql://localhost:3306/studentprofiles","root","");

Durch diese ersetzt:
...
Code:
"jdbc:mysql://localhost/studentprofiles","root","");

Ich rufe das ganze an der Eingabeaufforderung mit "java mysql1" auf.

Viele GRüße
Yeti
 

yeti

Mitglied
Hi,

nach dem Tipp von L-ectron-X hab ich mal in meinem Javaverzeichnis nach einer Datei mit dem Namen Manifest gesucht. Gefunden habe ich 6 Dateien.

2 heißen chrome.maifest
In den Odnern:
C:\Programme\Java\jdk1.6.0_10\jre\lib\deploy\jqs\ff
C:\Programme\Java\jre6\lib\deploy\jqs\ff

4 heißen manifest.mf
In den Ordnern:
C:\Programme\Java\jdk1.6.0_10\sample\jmx\jmx-scandir
C:\Programme\Java\jdk1.6.0_10\sample\scripting\scriptpad\src\META-INF
C:\Programme\Java\jdk1.6.0_10\sample\webservices\EbayClient
C:\Programme\Java\jdk1.6.0_10\sample\webservices\EbayServer

Wo trage ich da nun was ein?

Viele Grüße
Yeti
 

yeti

Mitglied
Das sollte man niemals machen. Entweder den Treiber auspacken und dann mit zu den eigenen Klassen legen, oder meiner Meinung nach viel besser: Den Treiber nebem die eigene Jar-Datei legen/ausliefern und im Manifest im Class-Path aufführen.

Jetzt hab ich das nochmal gelesen, was du schreibst.
Ich hab gar keine jar-Datei.

Ich habe die Datei mysql1.class aus der mysql1.java kompiliert. Ich fürchte, wir sprechen von was anderem? Sorry aber ich fange erst an und alles was ich bis jetzt gemacht habe ist class-Dateien aus java-Dateien zu kompilieren und diese dann an der Eingabeaufforderung zu starten.

Kann mir dennoch geholfen werden? ;-)

Gruß Yeti
 

L-ectron-X

Gesperrter Benutzer
Dann gehört der Treiber erstmal mit in den Classpath.

Versuche mal folgenden Aufruf inder Konsole:
Code:
java -cp .;mysql-connector-java-5.1.10-bin.jar mysql1
 

yeti

Mitglied
Dann gehört der Treiber erstmal mit in den Classpath.

Versuche mal folgenden Aufruf inder Konsole:
Code:
java -cp .;mysql-connector-java-5.1.10-bin.jar mysql1

Ja, hab ich gemacht.
Jetzt kommt wieder die hier:

com.mysql.jdbc.Driver
No suitable driver found for jdbc:mysql://localhost/studentprofiles

Ich dreh mich hier im Kreis :-( Hoffentlich ist der Aufschlag nicht so hart ;)
Hast du noch ne Idee?

Gruß Yeti
 

L-ectron-X

Gesperrter Benutzer
Mit deinem Code und meiner Zeile zum Starten deines Programms habe ich eine Testverbindung zu einer Datenbank mit dem Treiber mysql-connector-java-5.1.7-bin.jar herstellen können.

Unter welchem Betriebssystem arbeitest du? Falls du Linux verwendest, müsstest du das Semikolon gegen einen Doppelpunkt tauschen.

Versuche ansonsten mal einen älteren Treiber.
 

yeti

Mitglied
Hi,

ist hier bei mir Win2K und XAMPP und an einem Übungsplatz WindowsXP Home auch mit XAMPP.
Habe an beiden Rechnern mit jeweils unterschiedlichen Treibern den glechen Fehler. Liegt es daran, dass ich kein Passwort für die Mysql DB vergeben habe?

Aber das müsste ja durch die Übergabe von "root" und "" erledigt sein?

Vielleicht ist XAMPP das Problem? Obwohl ich an beiden Rechnern mit OpenOffice und eben diesem JDBC Treiber eine Verbindung herstellen kann und zumindest die Daten aus der Tabelle in der DB lesen kann...

Mir ist das ein Rätsel.

Gruß Yeti
 

L-ectron-X

Gesperrter Benutzer
Hmm, ein' hab' ich noch... ;)

Setze mal statt localhost die lokale IP-Adresse ein.
Also bspw. 192.168.0.1
Schau dazu mal nach, welche IP dein Rechner hat.
 

yeti

Mitglied
Hmm, ein' hab' ich noch... ;)

Setze mal statt localhost die lokale IP-Adresse ein.
Also bspw. 192.168.0.1
Schau dazu mal nach, welche IP dein Rechner hat.

Schade... auch hier der gleiche Fehler.

Ich denke mal es ist irgendwas total dämliches, einfaches.... Vielleicht hilft es, wenn du mir die einzelnen Schritte kurz skizzierst, wie du es machen würdest?

Wäre super....
 

Tharsonius

Bekanntes Mitglied
Ich weiss nicht obs daran liegt, ich verwende in meinem Programm einen anderen Aufruf:

Class.forName("org.gjt.mm.mysql.Driver");
 

yeti

Mitglied
Schon möglich. Wie gesagt, der Code aus dem Eingangspost ist funktionsfähig.

Ja und was mich eben wundert, ich kann mit OpenOffice unter Angabe des ebtsprechenden Connectors auf die MySql DB zugreifen und damit beispielsweise einen Serienbrief erstellen. Das geht alles...
Ich finde leider keine zusammenfassende Doku zu dem Thema.

In den Dokus steht immer nur das, was ich schon gemacht habe. Kopieren sie den Connector da und da hin, setzen sie den CLASSPATH, etc. Es ist echt merkwürdig.

Kannst du mir evtl. deine Vorgehensweise kurz beschreiben?
Voerausgesetzt du hast einen Windows-Rechner und verwendest auch XAMPP.

Viele Grüße
Yeti
 

yeti

Mitglied
Ich weiss nicht obs daran liegt, ich verwende in meinem Programm einen anderen Aufruf:

Class.forName("org.gjt.mm.mysql.Driver");

Hab ich probiert, der gleiche Fehler.

Klappt das bei dir mit Windows und XAMPP? Wenn ja würde ich mich freuen, wenn du mir mitteuilen könntest, welchen Connector, due wo hin kopiert hast, wie dein Classpath diesbezüglich aussieht. Vielleicht habe ich irgendwas an irgendeiner Stelle vergessen / übersehen ?

Gruß Yeti
 

yeti

Mitglied
Es läuft jetzt. War tatsächlicu doch der falsche Classpath eingetragen.
Hab jetzt nach langem rumsuchen und probieren einfach den ganzen Classpath noch mal komplett eingetragen und siehe da... es geht jetzt!

Vielen Dank für erure Hilfe. Ist mir schon fast peinlich. Wie im Supermarkt... du stehst direkt vorm Ketchup und fragst die Verkäuferin nach dem Ketchup, die dich dann nur angrinst... Naja ;-)

Viele Grüße
Yeti
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
Juelin Java und MySQL MariaDB - WHERE-Klausel Datenbankprogrammierung 17
TheSkyRider MySQL Datenbankzuordnung in Verbindung mit Java Datenbankprogrammierung 7
C Java MySQL check if value exists in database Datenbankprogrammierung 2
S Datenbank MySQL und Java Datenbankprogrammierung 8
P Adressadministration mit Java und mySQL Datenbankprogrammierung 14
platofan23 MySQL Java Programm findet Treiber für mySQL auf Debian-Server nicht? Datenbankprogrammierung 11
X MySQL Java hat keinen Zugriff auf MySQL Datenbankprogrammierung 9
K Java Object mit Hibernate in MySQL abspeichern Datenbankprogrammierung 1
G MySQL Java Problem: Nullpointer Exception obwohl Daten vorhanden sind? Datenbankprogrammierung 2
F MySQL Wie kann ich in Java Datensätze aus einer MySQL Datenbank gezielt in einzelne Arrays schreiben? Datenbankprogrammierung 9
J mySQL- Java Application - Zugriff über Internet Datenbankprogrammierung 3
H SHOW Tables in Java/MySQL Datenbankprogrammierung 8
Z MySQL Shopsystem mit mysql und Java Datenbankprogrammierung 8
H Datenbank-Anbindung Java/MySQL Datenbankprogrammierung 2
K Adressverwaltung mit MySql und Java? Datenbankprogrammierung 11
M Java Mysql verbinden Datenbankprogrammierung 3
L MySQL App/Java Zugriff auf Mysql-DB funktioniert nicht Datenbankprogrammierung 1
P MySQL Java Programm als Dienst MySQL Dump zurück spielen Datenbankprogrammierung 4
P Mittels Java einen neuen MySQL User erstellen Datenbankprogrammierung 4
E MySQL Java an Mysql Webdatenbank anbinden Datenbankprogrammierung 11
L Mit Java Desktop Anwendung auf Mysql Server auf Webspace verbinden Datenbankprogrammierung 11
S Java Connection to MySQL Datenbank FunPic Datenbankprogrammierung 4
F Wie kann man das mysql Command in java laufen lassen? Datenbankprogrammierung 14
G Suchfunktion mit Java in Mysql Datenbank Datenbankprogrammierung 7
M Auf MySQL Datenbank mit Java zugreifen Datenbankprogrammierung 4
M MySQL Datenbank mit Java routen Datenbankprogrammierung 2
A mysql Treiber nich gefunden Java Editor Datenbankprogrammierung 6
M Ausgabe in Tabelle der MySQL-Datenbank mit Java Datenbankprogrammierung 4
H MySQL-DB automatisches Backup per Java Datenbankprogrammierung 2
S java.lang.ClassNotFoundException: com.mysql.jdbc.Driver Datenbankprogrammierung 10
S Java objekt in MYSQL auslesen Datenbankprogrammierung 32
H Fat Jar Export: Could not find class-path entry for 'C:Java/jdk/mysql-connector-java- Datenbankprogrammierung 3
N Java mit MySQl verbinden Datenbankprogrammierung 11
F eigenartiges Java/mysql problem Datenbankprogrammierung 9
S Java, JDBC und MySQL - Verbindungserror Datenbankprogrammierung 8
B Spaltennamen von MySQL Datenbank nach Java auslesen Datenbankprogrammierung 10
P Java und MySQL Datenbankprogrammierung 7
J MYSQL-Zugriff mittels einer Java-Bean Datenbankprogrammierung 42
T Java app. MySQL, Google Web API, domains Datenbankprogrammierung 2
A Java-Applet -> MySQL Datenbank Datenbankprogrammierung 7
E Datenbankverbindung Java MySQL Exception Datenbankprogrammierung 10
L Bilder in MySQL-Datenbank via Java verwalten Datenbankprogrammierung 5
zilti java.lang.ClassNotFoundException: com.mysql.jdbc.Driver Datenbankprogrammierung 3
H Empfehlenswert: Java + MySQL? Datenbankprogrammierung 18
G wohin mit dem treiber ? mysql-connector-java-5.0.5-bin.jar Datenbankprogrammierung 12
D java.lang.ClassNotFoundException: com.mysql.jdbc.Driver Datenbankprogrammierung 5
J Java und Mysql Datenbankprogrammierung 5
F JAVA & MySQL : INSERT INTO DB ! Datenbankprogrammierung 2
U Java und Mysql Problem über 24:00:00 Stunden Datenbankprogrammierung 4
M MySQL-Datenbank über Java ansprechen Datenbankprogrammierung 5
M Datenbankanbindung: Java - MySQL Datenbankprogrammierung 2
A MySQL+Webserver --(Java-Applet)----> Client Datenbankprogrammierung 11
B Source not found // Java MySQL (eclipse) Datenbankprogrammierung 4
B Importieren in MySQL mit Java-Programm Datenbankprogrammierung 2
B Exportieren aus MySQL mit Java-Programm Datenbankprogrammierung 11
M Mit Java Data Objects Daten in einer MySQL-Datenbank manipul Datenbankprogrammierung 9
G MySQl und Java Datenbankprogrammierung 6
B Java und MySQL mal wieder Datenbankprogrammierung 3
S MySQL-Abfrage unter java funktioniert nicht! Datenbankprogrammierung 4
R MySQL denies access to data source - java.sql.SQLException Datenbankprogrammierung 14
M MySQL Tabellen in java auslesen? Datenbankprogrammierung 5
G Java & Mysql Ein- und Ausgabefehler? (Anfängerfrage) Datenbankprogrammierung 2
S MySQL und Java: Falsche Daten werden ausgelesen Datenbankprogrammierung 9
S Passwort MySQL oder JAVA? Datenbankprogrammierung 4
A java & mysql abfrage mit variablen auswerten, wie? Datenbankprogrammierung 8
P java connectet mysql-db nicht. Datenbankprogrammierung 5
8 Java-MySQL wie geht das mit dem Treiber? Datenbankprogrammierung 3
G 2 fragen zu java <-> mysql Datenbankprogrammierung 4
M Mit Java Applet via HDBC auf MySQL DB zugreifen? Datenbankprogrammierung 2
T MySQL - Java - Japanisch (Kanji) Datenbankprogrammierung 3
E kann mysql nichts mit java.sql.Time anfangen?? Datenbankprogrammierung 3
F Problem mit MySQL-Datenbank und Java-Applet Datenbankprogrammierung 2
N MySQL DB in Java einbinden ? Datenbankprogrammierung 2
G JDBC - MYSQL - Schnittstelle in Java programmieren Datenbankprogrammierung 8
G grundwissen Java-Mysql Datenbankprogrammierung 5
S JAVA & MySQL Datenbankprogrammierung 2
P Java & MySQL Datenbankprogrammierung 26
D Mysql zugriff aus java nicht moeglich Datenbankprogrammierung 2
P Reicht finally nicht um DB connections zu schließen in (altem) Java? Datenbankprogrammierung 4
A Java DB Server lässt sich nicht starten Datenbankprogrammierung 3
U SQL Server mit Java verbinden Datenbankprogrammierung 5
D SQLite Datenbank in Android Studio (Java) durchsuchen Datenbankprogrammierung 3
TH260199 Java-Programm. Probleme bei der Umsetzung von einer Kontaktverwaltung. Datenbankprogrammierung 7
S Das printen der Ausgabe des Oracle-SQL-Statements in der Java-Eclipse-Konsole funktioniert nicht Datenbankprogrammierung 6
Zrebna Wie mittels Hibernate eine Join-Tabelle als eigene Java-Klasse erstellen? Datenbankprogrammierung 5
Zrebna Noobfrage: Konvertierung von SQL-Datentyp 'timestamp with time zone' in Java-Datentyp Datenbankprogrammierung 3
Zrebna Lediglich interne DB-Verbindungen (Connections) auslesen - mittels Java Datenbankprogrammierung 4
berserkerdq2 Was genau muss ich bei date eingeben, wenn ich in Java eine Spalte definiere, die date ist? Datenbankprogrammierung 1
berserkerdq2 Was kann passieren, wenn ich in java einstelle, dass der Fremdschüssel ein Attribut ist, welches selber kein Primärschlüssel ist? Datenbankprogrammierung 4
berserkerdq2 Foreign key einstellen java Datenbankprogrammierung 4
nikgo Java SQL Ausgabe in Liste o.ä. abspeichern um mit dem Ergbnis "zu arbeiten"? Datenbankprogrammierung 5
S Datenbankprogrammierung in Java unter NetBeans 12 funktioniert nicht! Datenbankprogrammierung 1
Beginner22 Zugriff auf Datenbank aus Java über mariadb Datenbankprogrammierung 3
S ODBC Treiber in Java Editor einbinden Datenbankprogrammierung 3
H Oracle Resize eines Images in Java und Rückgabe des Image als BLOB an die Oracle Datebank Datenbankprogrammierung 14
H Java Class zum komprimieren von Jpeg-Images zum Einbinden in Oracle DB - Bild als blob (in und out) Datenbankprogrammierung 23
V SQLite java.sql.SQLException: no such column: Datenbankprogrammierung 18
B Wie kopieren ich eine Spalte von einer Tabelle in eine andere Tabelle SQLite durch java code? Datenbankprogrammierung 26
D Daten aus der Firebase-Echtzeitdatenbank abfragen und in Variablen speichern (JAVA) Datenbankprogrammierung 0
Slaylen Java List Suchen mit eigenem Generischen Datentyp Datenbankprogrammierung 10

Ähnliche Java Themen

Neue Themen


Oben