Einzelnen Beitrag anzeigen

SMALLID

Registriert seit: 10. Aug 2004
78 Beiträge
 
#1

TClientDataSet: AutoInc auch wirklich automatisch inc-en

  Alt 1. Jan 2007, 15:26
Datenbank: XML (MyBase) • Zugriff über: TClientDataSet
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!!
  Mit Zitat antworten Zitat