Ich habe gerade eine Verbindung mit einer lokalen ACCDB-Access-Datenbank hergestellt und versuche nun, meine Tabellen zu erstellen. Ich betreibe diese beiden Zeilen mit Java und es gibt keine Fehler während dieser SQL-Befehle ausführen:Access DB Autoincrement lässt mich die Tabelle nicht öffnen
Statement st = d.createStatement();
st.executeUpdate("CREATE TABLE suppliers ([name] TEXT(255), [adress] TEXT(255), [ID] AUTOINCREMENT PRIMARY KEY);");
st.executeUpdate("CREATE TABLE quality ([name] TEXT(255));");
st.close();
Aber jetzt, da ich die soeben erstellte Tabellen mit Microsoft Access gibt es einen Unterschied zwischen den beiden generierten Tabellen öffnen möchten.
Ich kann die Tabelle "Qualität" normal öffnen und einige Werte einfügen.
Nun, wenn ich zu öffnen ich versuche, „Lieferanten“ Ich bekomme diese Fehlermeldung:.
Es ist in deutscher Sprache und bedeutet „Die Datenbank‚‘nicht geöffnet worden könnte entweder die Datenbank doesn Sie werden von Ihrer Anwendung nicht erkannt oder die Datei ist beschädigt. "
Also habe ich versucht, die "[ID] AUTOINCREMENT PRIMARY KEY" zu entfernen und es funktioniert gut ohne dies. Der Fehler muss also von "AUTOINCREMENT" verursacht werden.
Um mit der Datenbank verbinden ich ucanacess:
Class.forName("net.ucanaccess.jdbc.UcanaccessDriver");
c = DriverManager.getConnection("jdbc:ucanaccess://C:/bin/Test.accdb");
ich etwas falsch mit meinem "AUTOINCREMENT" gemacht?