Ich kommte einfach nicht wirklich weiter.
1.
Ich sollte anhand einer Template MDB Tabellen in einer anderen Access DB erstellen.
Dazu lese ich die Schemainformationen des OleDb Provider's aus.
[...]
DataTable schemaTable = conn.GetOleDbSchemaTable(OleDbSchemaGuid.Columns, new Object[]{null, null, tablename});
[...]
Damit wird ein CREATE TABLE erstellt und ausgeführt. Funktioniert wunderbar.
Jetzt musste ich aber feststellen, dass das Schema keine Infos über den Primärschlüssel enthält. Blöd.
Wie soll ich ein Schema synchronisieren wenn ich den Primärschlüssel auch brauche?
2.
Problem 1 würde sich erledigen wenn ich den Feldtyp in einer Tabelle ändern könnte. Mit ALTER TABLE XXX ALTER COLUMN und dann die neuen Angaben klappt es nicht. Feldlänge ist kein Problem. Feldtyp schmeisst einen Fehler.
Zudem bekomme ich es auch nicht hin [NOT NULL] zu setzen b.z.w. zu ändern.
Hat jemand eine Idee?
Ich kann eigentlich schon fast alles machen bis auf den Feldtyp ändern und das [NOT NULL] ändern.
Comment