Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Firedac, ADS und Klasse TFDUpdateSQL (https://www.delphipraxis.net/206247-firedac-ads-und-klasse-tfdupdatesql.html)

UliTs 3. Dez 2020 11:45

Datenbank: ADS • Version: 12 • Zugriff über: Delphi, Firedac

Firedac, ADS und Klasse TFDUpdateSQL
 
Hallo allerseits,

hat jemand von Euch schon einmal mit der Klasse TFDUpdateSQL in Verbindung mit TFDQuery und dem ADS (Advantage Database Server Version 12) gearbeitet?

Hintergrund ist, dass ich den Standard Post-Befehl von TFDQuery anpassen möchte. Ich vermute, dass dies über die Eigenschaft TFDQuery.UpdateObject geht, indem man dort ein TFDUpdateSQL hinterlegt.

UliTs 7. Dez 2020 14:50

AW: Firedac, ADS und Klasse TFDUpdateSQL
 
Es scheint tatsächlich so zu sein, dass fast niemand mit TFDUpdateSQL arbeitet :( .
Ich habe inzwischen herausgefunden, dass man damit tatsächlich den Update-Befehl anpassen kann. Ich habe mit
Code:
INSERT INTO N_NACHW
(TAG, PERSNR, AUSGESCH, PROJNR, APNR,
  STUNDEN, NOCHABR, CSTATUS)
VALUES (:NEW_TAG, :NEW_PERSNR, :NEW_AUSGESCH, :NEW_PROJNR, :NEW_APNR,
  :NEW_STUNDEN, :NEW_NOCHABR, :NEW_CSTATUS);
try
  create table #LastRowNw( LastRowId char(32) );
  insert into #LastRowNw values( NULL );
  catch ADS_SCRIPT_EXCEPTION
  if __errcode<>5189 then // 2010: table already exists, 5189: temporary table already exists
    raise;
  end if;
end try;
update #LastRowNw set LastRowId = LastRowId();
mein Glück versucht, damit ich an die RowId des zuletzt angelegten Datensatzes rankomme. Leider erfolglos :( , da dadurch Firedac denkt, dass 2-3 Datensätze angelegt wurden, statt 1 einem und es so zu einer Fehlermeldung kommt.


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:59 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz