Allerdings hab ich aktuell alle Variablen in einem Objekt und schick das Objekt an die
SQL-
Query, wo dann die Variablen geschrieben werden.
Unterstütz das DAC eine interne Update-Funktionalität (wie z.B. TFDQuery das tut), dann kann man dem TIntegerField einfach über AsString den Wert mitgeben (AsVariant geht glaube ich nicht so gut). Ist der String leer, wird NULL an die Datenbank übergeben, andernfalls der entsprechende Wert. Umgekehrt wird beim Lesen über AsString ein NULL in der
DB als Leerstring zurückgegeben. Damit wird in der
DB schon mal zwischen NULL und 0 unterschieden und dies auch im Edit-Control entsprechend dargestellt und ausgewertet.
Leider ist der Aufwand deutlich höher, wenn man die
Query direkt zusammenbaut oder über ein ORM-ähnliches System darauf zugreift. Letzteres würde ein ORM erfordern, das auch Nullable Types unterstützt.
Obwohl mittlerweile eher verpönt, unterstützen datensensitive Controls diese Anforderung schon ewig von Haus aus.