Thema: Delphi Fehler bei ADOTable.Post

Einzelnen Beitrag anzeigen

arnof

Registriert seit: 25. Apr 2013
1.254 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#13

AW: Fehler bei ADOTable.Post

  Alt 7. Jun 2013, 15:05
Hi,

ich arbeite in vielen Großprojekten mit der ADO und verschiedenen SQL-Servern. Die ADO hat so ihre Eigenheiten mit Postfehler unlustigen Löschfehlern.

Meine Lösung die bei tausenden Kunden nach Jahren des reifens problemfrei läuft ist, das ich mit eigene Komponenten gebastelt habe, die diese ganzen Eigenheiten abfangen:

z.B. gibt es die PostError, dort legt man eine Funktion hin, die das SQLStatemant manuell zusammenbastelt und dann via Command Komponente abschickt.


Dies ist aber nicht trivial und geht weit über die Möglichkeiten des Formum hinaus

Nur mal damit man den Anfang findet:


procedure TADOTable.PostError(DataSet: TDataSet; E: EDatabaseError; var Action: TDataAction);

.....

if State=dsInsert then begin
if Trim(xInsertField)<>'' then begin
c.CommandText:='INSERT INTO '+c1+XADOTable.TableName+c2+' ('+xInsertField+') VALUES ('+xInsertValue+')';

....

c.CommandText:='UPDATE '+ADOTable.TableName+' SET ....'+xUpdate+' WHERE '+ADOTable.FieldDefs[0].Name+'='+MakeSQLValue(FieldByName(XADOTable.Field Defs[0].Name));
  Mit Zitat antworten Zitat