# Einbindung einer Datenbank in Java



## Tekke (26. Mrz 2009)

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("jdbcdbcVD");
         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)
> ...



danke schonmal für die Hilfe.....


----------



## foobar (26. Mrz 2009)

Du mußt das jar mit dem JDBC-Treiber dem Classpath hinzufügen. In der Shell macht man das mit java -cp myjdbcTreiber Datenzugriff


----------



## Tekke (26. Mrz 2009)

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...


----------



## JanHH (27. Mrz 2009)

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.


----------



## L-ectron-X (27. Mrz 2009)

Den Vorschlag, den Treiber ins jre/lib/ext-Verzeichnis zu kopieren, vergiss lieber schnell wieder. Das ist nicht praktikabel.
Vielleicht findest du hier noch etwas brauchbares: Datenbankverbindung (Java) - Byte-Welt Wiki


----------



## Tekke (27. Mrz 2009)

Danke für eure Hilfe, war ja echt eigentlich nur was kleines... muss man halt wissen


vielen dank
tekke


----------



## foobar (28. Mrz 2009)

Kaum macht mans richtig, schon funktionierts ...


----------



## JohannisderKaeufer (30. Mrz 2009)

Tekke hat gesagt.:


> [HIGHLIGHT="Java"]
> // Deine Zeile 6
> Class.forName("sun.jdbc.odbc.Jdbc0dbcDriver");
> Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
> ...



Also o statt null.
Es heißt ja Open DataBase Connectivity
und nicht Null DataBase Connectivity :lol:


----------



## Tekke (30. Mrz 2009)

hehe stimmt, mieser tippfehler aber ich hatte da am ende eh was anderes stehen..^^
aber danke nun hab ich das hingeschrieben


----------

