Hallo!
Ich vesuche mich gerade darin mit Hilfe von Frames auf eine (Postgre-)Datenbank zuzugreifen. Klappt insofern auch schon gut, dass ich eine Verbindung hinkriege und mich einloggen kann. Der nächste Schriit ist nun eine Abfrage zu erstellen. Leider klappt es nicht, weder neue Datensätze in eine table einzufügen, noch welche auszulesen. Dies liegt daran, dass der befehl CreateStatement einen Fehler produziert.
Mein Ansatz ist wie folgt:
Schöner Dialog mit Button, dem ActionListener zugewiesen ist.
Handler dazu:
...
Hier muss keine Exception abgefangen werden.
Anschließend landet man in einer anderen Klasse die zu einer weiteren Klasse weiterleitet, die folgenden Funktion aufruft, die sich in der selben Klasse befindet, wie der Code oben:
Das Statement stmt wird leider nicht erstellt und es wird die Exception "null" abgefangen.
Wo liegt mein Fehler? Ich hoffe, dass jemand eine Ferndiagnose machen kann... Danke!
Gruß
joerg
Ich vesuche mich gerade darin mit Hilfe von Frames auf eine (Postgre-)Datenbank zuzugreifen. Klappt insofern auch schon gut, dass ich eine Verbindung hinkriege und mich einloggen kann. Der nächste Schriit ist nun eine Abfrage zu erstellen. Leider klappt es nicht, weder neue Datensätze in eine table einzufügen, noch welche auszulesen. Dies liegt daran, dass der befehl CreateStatement einen Fehler produziert.
Mein Ansatz ist wie folgt:
Code:
public class LoginDialog extends JFrame {
JTextField nameField;
JTextField pwField;
Container c = getContentPane();
Connection my_con;
String userName;
public LoginDialog(){
Handler dazu:
...
Code:
try{
userName = nameField.getText().toString();
my_con = DriverManager.getConnection(url, userName, pwField.getText().toString());
setVisible(false);
KonfigurationsEditor konEditor = new KonfigurationsEditor();
}
catch(Exception ee){
Label fehler = new Label("Fehler: Konnte nicht verbinden. Versuchen Sie es nochmal!");
fehler.setBounds(20,10,380,20);
c.add(fehler);
}
...
Hier muss keine Exception abgefangen werden.
Anschließend landet man in einer anderen Klasse die zu einer weiteren Klasse weiterleitet, die folgenden Funktion aufruft, die sich in der selben Klasse befindet, wie der Code oben:
Code:
public void exe(String s){
System.out.println(s);
try{
Statement stmt = my_con.createStatement(); // Hier knallts
stmt.execute(s);
stmt.close();
}
catch(SQLException e) {
System.out.println("SQL-Fehler bei Abfrage!");
System.out.println(e.toString());
}
catch(Exception e){
System.out.println(e.getMessage());
}
}
Das Statement stmt wird leider nicht erstellt und es wird die Exception "null" abgefangen.
Wo liegt mein Fehler? Ich hoffe, dass jemand eine Ferndiagnose machen kann... Danke!
Gruß
joerg