Hallo,
ich versuche per ucanaccess auf eine MS-Access-Datenbank zuzugreifen.
Die Verbindung funktioniert auch.
Jetzt würde ich gerne überprüfen lassen, ob eine Tabelle vorhanden ist und falls nicht, diese anlegen lassen bzw. wenn diese vorhanden wäre prüfen ob die einzelnen Spalten vorhanden sind.
Hier mal mein Versuch, aber irgendwie stürzt der bereits bei der zweiten Zeile ab, da die Tabelle nicht vorhanden ist.
Wie ist es möglich nun mit ucanaccess zu überprüfen, ob eine Tabelle vorhanden ist und falls nicht diese anzulegen?
Wie wäre der Befehl für die Spalte?
Vielen Dank im Voraus
Gruß
Dommschwenker
ich versuche per ucanaccess auf eine MS-Access-Datenbank zuzugreifen.
Die Verbindung funktioniert auch.
Jetzt würde ich gerne überprüfen lassen, ob eine Tabelle vorhanden ist und falls nicht, diese anlegen lassen bzw. wenn diese vorhanden wäre prüfen ob die einzelnen Spalten vorhanden sind.
Hier mal mein Versuch, aber irgendwie stürzt der bereits bei der zweiten Zeile ab, da die Tabelle nicht vorhanden ist.
Code:
try {
sql = "SELECT * FROM tab_version";
pst = con.prepareStatement(sql);
rs = pst.executeQuery();
if (!rs.next()) {
info = info + "Tabelle nicht vorhanden ... wird angelegt ...";
txa_update.setText(info);
sql = "CREATE TABLE tab_version (id COUNTER CONSTRAINT PrimaryKey PRIMARY KEY, version TEXT, build TEXT, beschreibung MEMO)";
pst = con.prepareStatement(sql);
pst.execute();
pst.close();
info = info + " Tabelle wurde angelegt ... ok";
} else {
// hier werden die einzelnen Spalten überprüft
}
txa_update.setText(info);
} catch (SQLException e) {
JOptionPane.showMessageDialog(null, "Datenbankfehler: \n" + e, "Fehlermeldung", JOptionPane.ERROR_MESSAGE);
}
} catch (Exception e) {
JOptionPane.showMessageDialog(null, "Allgemeiner Fehler: \n" + e, "Fehlermeldung", JOptionPane.ERROR_MESSAGE);
}
Wie ist es möglich nun mit ucanaccess zu überprüfen, ob eine Tabelle vorhanden ist und falls nicht diese anzulegen?
Wie wäre der Befehl für die Spalte?
Vielen Dank im Voraus
Gruß
Dommschwenker