Problem mit meinem verbindung zu meiner Datenbank ?

Code46

Erfahrenes Mitglied
Hallo ich versuche gerade die eingetragenen sachen in der Datenbank in meinem Textfield anzuzeigen, jedoch zeigt er mir ein Fehler an. Könntet ihr mir vielleicht weiter helfen.
Danke

Hier mein Code:
Code:
import java.sql.*;

public class LibraryData {

private static Connection connection;
private static Statement stmt;

static {
try {Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
String sourceURL = "jdbc:odbc:Driver={Microsoft Access Driver(*.mdb)};DBQ=Library.mdb;";
connection = DriverManager.getConnection(sourceURL, "admin", "");
stmt = connection.createStatement();}catch (Exception e){System.out.println(e);}
}


public static String listAll() {String output = "";
try {
ResultSet res = stmt.executeQuery

("SELECT DVDID,Title, Type, Price, Notes FROMLiberary ORDER BY Title");
while (res.next()) {output += res.getInt(1) + ") " + res.getString(2) + " - "
    + res.getString(3) + " - "+ res.getInt(4) +" - "+ res.getString(5) + "\n";
}
}
catch (Exception e) {
	System.out.println(e);return null;
}
return output;
}


Versuche es hier anzuzeigen:
Code:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class SearchDVD extends JFrame
    implements ActionListener {
    JTextField txtfld_search = new JTextField(20);
    JButton btn_search = new JButton("Search");
    JButton btn_list = new JButton("List All");
    JButton btn_clear = new JButton("Clear");
    LibraryData db = new LibraryData();
    TextArea information = new TextArea(10, 50);
    JComboBox type = new JComboBox();

    public SearchDVD() {
        setLayout(new BorderLayout());
        setBounds(150, 150, 650, 250);
        setTitle("Search DVD");
        setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);

        JPanel top = new JPanel();
        top.add(new JLabel("Search DVD: "));
        top.add(txtfld_search);
          top.add(type);
        String[] typeStr = {"DVD","Music"};
        for (int i = 0; i < typeStr.length; ++i) {

        type.addItem(typeStr[i]);
        }
        top.add(btn_search);
        top.add( btn_list);
        top.add( btn_clear);
      
        btn_search.addActionListener(this);
        btn_list.addActionListener(this);
        btn_clear.addActionListener(this);
        add("North", top);

        JPanel middle = new JPanel();
       // information.setText(LibraryData.listAll());
        middle.add(information);
        add("Center", middle);

        setResizable(false);
        setVisible(true);
    }

    public void actionPerformed(ActionEvent e){

if (e.getSource() == btn_list) {
	information.setText(LibraryData.listAll());
	
}
    }
}
 
Wenn du uns nicht sagst, was für einen Fehler es denn gibt, können wir nur raten. Und das bei einer großen Menge an möglichen Fehlerquellen...

Gruß
Matt
 
Sorryy habe das total vergessen. Also wenn ich auf dem Button(btn_list) klicke, dann kommt nichts und diese Fehlermeldung.
Hier das ist die Fehlermeldung:

java.sql.SQLException: [Microsoft][ODBC Driver Manager] Der Datenquellenname wurde nicht gefunden, und es wurde kein Standardtreiber angegeben
java.lang.NullPointerException
 
Zuletzt bearbeitet:
Hallo Code46,

liegt die Access DB auch in deinem Source Verzeichnis? Scheint so als wenn er die Datenbank nicht findet.

Grüße
 
Zurück