Hallo, ich brauche in meinem Programm eine simple Datenbank, die nur lokal benutzt werden muss, aber Master/Detail Beziehungen unterstützen muss. Ich habe mich daher für das TClientDataSet entschieden und speichere damit zwei Tabellen ("UMTable" und "ArmTable") in zwei im Projektverzeichnis liegenden
XML-Dateien ab.
UMTable hat folgende Fields:
Pos (Autoinc, wurde automatisch auf "fareadonly", "faunique" gesetzt)
MH_Name (string)
FS_Typ (string)
Name (string)
ArmTable hat folgende Fields:
Pos (siehe oben)
UMID (integer) (würde über MasterSource und Masterfields auf UMTable.Pos gemappt, geht wunderbar)
StartX (Float)
StartY (Float)
EndX (Float)
EndY (Float)
Meine Frage: Wenn ich nun das Programm starte und Werte bei UMTable oder ArmTable über ein DBGrid eingeben will, so sollte normalerweise automatisch ein neuer Wert bei Pos dastehen. (so bin ich es zumindest von
Paradox Tabellen aus gewöhnt). Das Feld bleibt allerdings leer und erzeugt selbstverständlich beim Posten bzw. applyupdates eine Key Violation
Exception.
Was mache ich denn da falsch, dass da kein autoinc wert kommt? Falls ich den selbst erzeugen muss, wie mache ihc dass mit dem tclientdataset am besten?
Vielen Dank für eure Hilfe!!