Einbindung einer Datenbank in Java

Status
Nicht offen für weitere Antworten.

Tekke

Mitglied
Hallo,

ich bekomm es einfach nicht geschafft die Datenbank in Java einzubinden...
Vielleicht sieht jemanden den Fehler oder kann mit die Ausgabe die dabei herauskommt erklären, kann es vllt auch an der Datenbank liegen, ich tapp echt völlig im dunklen....

Hier der Quelltext:

[HIGHLIGHT="Java"]import java.sql.*;

public class Datenzugriff {
public static void main (String args[]) throws SQLException, ClassNotFoundException {
System.out.println ("Treiber laden");
Class.forName("sun.jdbc.odbc.Jdbc0dbcDriver");
System.out.println("Verbindung herstellen");
Connection con = null;
con = DriverManager.getConnection("jdbc😱dbc😀VD");
System.out.println("Abfrage:");
Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery ("Select * FROM VIDEOS");
while (rs.next() ) {
String Name = rs.getString("Name");
System.out.println("Name: " + Name);
}
System.out.println ("Fertig.");
con.close();
}
}[/HIGHLIGHT]

und hier die Ausgabe:

Treiber laden
Exception in thread "main" java.lang.ClassNotFoundException: sun.jdbc.odbc.Jdbc0
dbcDriver
at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:169)
at Datenzugriff.main(Datenzugriff.java:6)

C:\Dokumente und Einstellungen\Siemens\Desktop>Pause
Drücken Sie eine beliebige Taste . . .

danke schonmal für die Hilfe.....
 
Zuletzt bearbeitet von einem Moderator:
Du mußt das jar mit dem JDBC-Treiber dem Classpath hinzufügen. In der Shell macht man das mit java -cp myjdbcTreiber Datenzugriff
 
hmm ich bin leider nicht wirklich gut darin ... kannst du mir das ein klein bisschen ausführlicher erklären??? sry...

Achspo dazu kann ich sagen das ich schon den ODBC treiber bei Windows eingebunden hab... vllt meintest du das??


Und vielen Dank für die schnelle Antwort...
 
Zuletzt bearbeitet:
Naja der java-Classloader sucht nach einer Klasse, die dem Datenbanktreiber entspricht, und findet offenbar keine. Das muss man ändern. Dazu brauchst Du das entsprechende jar-File (was meistens bei der Datenbankdistribution dabei ist), bindest dies in den classpath ein, oder, was die "radikalste" Lösung ist, kopierst es in das jre/lib/ext-Verzeichnis Deiner Java-Installation.
 
Zuletzt bearbeitet:
Danke für eure Hilfe, war ja echt eigentlich nur was kleines... muss man halt wissen


vielen dank
tekke
 
[HIGHLIGHT="Java"]
// Deine Zeile 6
Class.forName("sun.jdbc.odbc.Jdbc0dbcDriver");
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
//Zeile 6 Wie sie richtig aussehen sollte.

[/HIGHLIGHT]

Also o statt null.
Es heißt ja Open DataBase Connectivity
und nicht Null DataBase Connectivity :lol:
 
hehe stimmt, mieser tippfehler aber ich hatte da am ende eh was anderes stehen..^^
aber danke nun hab ich das hingeschrieben 😉
 
Status
Nicht offen für weitere Antworten.

Zurück
Oben