Back to the basics...
Ein Feld kann das Attribut NULL oder NOT NULL haben.
Ein Primärschlüsselfeld hat in aller Regel das Attribut NOT NULL.
Bei einem AutoInc-Feld wird die Sache etwas komplizierter.
Es hat das Attribut NOT NULL, darf aber nicht von der Anwendung befüllt werden
(Attribut "DON'T FILL")
Es wird ja von der Datenbank gefüllt und darf deshalb nicht in der INSERT oder
UPDATE-Anweisung angesprochen werden.
Man muss also daür sorgen (eigentlich sollte das die
VCL tun), dass das Property "Required"
der Felds = False ist.
AutoInc-Felder sind bequem und smart, aber nur solange man den Wert beim Einfügen
eines Datensatzes nicht benötigt.
Hat man abhängige Tabellen, dann ist es besser auf AutoInc-Felder zu verzichten
und einen Generator oder künstlich erzeugte Schlüssel zu benützen.