Um das mal ein wenig zu erklären: FireDAC versucht bei einem Update möglichst eindeutige Key-Felder zu nehmen (
upWhereKeyOnly). Ein Key-Feld zeichnet sich dadurch aus, dass es das ProviderFlag
pfInKey hat. Die WHERE-Clause beim Update enthält also nur die Key-Felder.
Gibt es kein solches Feld, kommt als Fallback das
upWhereAll zum Einsatz. Dabei listet die WHERE-Clause alle Felder auf und da streikt
Access ab einer gewissen Anzahl.