Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.033 Beiträge
 
Delphi 12 Athens
 
#4

AW: ID im Datagrid -1

  Alt 2. Jul 2021, 12:13
TDataSet.Insert erstellt nur "lokal" den Datensatz/Record.
Die AUTOINC- und DEFAULT-Felder werden aber erst beim INSERT-Statement in der Datenbank gefüllt, also im DataSet.Post .
DataSet.Post schickt nur die "gefüllten" Felder beim INSERT ab. Alles was nicht explizit im Statement steht (DEFAULT/AUTOINC), wird dabei von der Datenbank gefüllt.



Du kannst aber im DataSet.AfterInsert von der Datenbank diese DEFAULT/GENERATOREN abfragen und bei dir eintragen, dann sehen auch die User das schon vor dem Post.

Die Tabellen/Feld-Definition von der Datenbank abfragen, dort das nehmen, was beim DEFAULT steht,
und dann SELECT {derTextVomDefaultDesFields} AS {FieldName}, ... .

Bedenke aber, dass bei einem CANCEL, dann eine Lücke entsteht, wenn der AUTOINC-Wert dann doch nicht verwendet wird.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

Geändert von himitsu ( 2. Jul 2021 um 12:21 Uhr)
  Mit Zitat antworten Zitat