2017-09-25 1 views
1

I UCanAccess verwenden (4.0.2) eine neue Datei mit einer einzigen Tabelle wie folgt zu erstellen:eine Tabelle mit Autoinkrement-Spalte erstellen: ‚‘ ist kein gültiger Name

// Create a database + connect 
DatabaseBuilder.create(FileFormat.V2010, new File(path)); 
Class.forName("net.ucanaccess.jdbc.UcanaccessDriver");  
conn = DriverManager.getConnection("jdbc:ucanaccess://" + path + ";singleconnection=true" ,"", ""); 

// Create table  
String sql = "CREATE TABLE Test (id AUTOINCREMENT PRIMARY KEY, value CHAR(1) NOT NULL)"; 
conn.createStatement().executeUpdate(sql); 

Der Code funktioniert aber die daraus resultierende Tabelle scheint unvollständig/fehlerhaft zu sein. Der Versuch, es in Access führt zu einem Fehler zu kopieren:

'' is not a valid name...

kein großes Problem, da das Speichern der Tabelle zu sein scheint aus der Entwurfsansicht sie löst.

Irgendeine Idee, warum das passiert und wie man es vermeidet?

+0

Ich konnte Ihr Problem mit dem neuesten UCanAccess-Entwicklungscode reproduzieren. Das Team wird nachforschen und ich werde eine Antwort mit allen Neuigkeiten veröffentlichen. –

Antwort

1

Dies steht in Zusammenhang mit einem bestätigten Problem mit Jackcess-Versionen 2.1.8 und älter. A fix wurde auf Jackcess angewendet, das in der nächsten Version (vorläufig 2.1.9) enthalten sein wird. Sobald ein UCanAccess-Update veröffentlicht wurde, das den Jackcess-Fix enthält, sollte das Problem verschwinden.

+0

Danke! Warten wir also auf das Update ... – Sophia

Verwandte Themen