Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Erkenne ob Post ein Update oder Insert war (https://www.delphipraxis.net/192065-erkenne-ob-post-ein-update-oder-insert-war.html)

p80286 17. Mär 2017 16:17

AW: Erkenne ob Post ein Update oder Insert war
 
Zitat:

Zitat von Ykcim (Beitrag 1364561)
Danke für die Hilfe!

Ich habe es jetzt so gemacht, wie Lemmy es vorgeschlagen hat und prüfe, nach dem Post einfach, ob die entsprechende Datensätze vorhanden sind. Wenn nicht, folgt die zusätzliche Insert-Procedur...

nun, dieses Vorgehen ist eher suboptimal. Hierfür gibt es Trigger!

Deine Vorgehensweise ist ungefähr so, als würde sich ein Fahrradfahrer weigern, die Bremse zu nutzen, er nimmt lieber die Füße zum bremsen, weil dann steht er ja gleich.

Gruß
K-H

Lemmy 17. Mär 2017 17:41

AW: Erkenne ob Post ein Update oder Insert war
 
Zitat:

Zitat von Ykcim (Beitrag 1364561)
Danke für die Hilfe!

Ich habe es jetzt so gemacht, wie Lemmy es vorgeschlagen hat und prüfe,

dann prüfe bitte und ruf keine Daten ab...

Delphi-Quellcode:
procedure TMySQLDB.QueryPosition_AfterPost(DataSet: TDataSet);
var  I: integer;
begin
   FMySelectQuery.SQL.Clear;
   FMySelectQuery.SQL.Add('select count(*) As Anzahl from prozess_position where positionen_id= :positionen_id ');
   FMySelectQuery.ParamByName('positionen_id').AsInteger:=FMyQuery_Position.FieldByName('positionen_id').AsInteger;
   FMySelectQuery.Open;
   if FMySelectQuery.FieldByName('Anzahl').AsInteger = 0 then begin
      Insert_Prozess;//Hier wird dann der Prozessablauf in die andere Tabelle geschrieben...
   end;
end;

Zitat:

Zitat von p80286 (Beitrag 1364563)
nun, dieses Vorgehen ist eher suboptimal. Hierfür gibt es Trigger!

darüber kann man trefflich diskutieren - und das haben wir ja auch erst vor einiger Zeit... DIE Lösung gibt es IMHO für das Problem nicht

Ykcim 18. Mär 2017 20:12

AW: Erkenne ob Post ein Update oder Insert war
 
Vielen Dank für Euer Feedback. Ja, gefallen tut mir die Lösung auch nicht so richtig. Mit Triggern bin ich noch nicht fit.
Statt Daten abzurufen ist der Vorschlag von Lemmy sicher besser.

Vielen Dank!


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:41 Uhr.
Seite 2 von 2     12   

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