![]() |
Datenbank: Firebird • Version: 2.5 • Zugriff über: ZeosLib
Anfängerfrage: TRIGGER - Andere Tabelle aktualisieren
Annahme:
Eine "Kundentabelle" mit Feld RECORD_NUMBER und NAME Eine "Overviewtabelle" mit Feld PARENT_NAME und PARENT_NR Ein Kunde kann x-mal in der Overviewtabelle verlinkt sein... (Kundentabelle.RECORD_NUMBER-Overviewtabelle.PARENT_NR) Jetzt ist absichtlich (ist natürlich techn. falsch..) der Name des Kunden auch in der Overviewtabelle.. Ich überlege gerade wie ein Trigger aussehen müsste, der bei Änderungen oder Neuerstellen in der Kundentabelle die mehrfach vorhandenen Overviewtabelle-Einträge aktualisiert Mein Pseudocode schau mal so aus:
Delphi-Quellcode:
Ist das richtig? - irgendwie fehlt mir ein "while not EOF" -Ding
CREATE TRIGGER UpdateVerknuepfung
FOR Kundentabelle BEFORE INSERT OR UPDATE AS BEGIN if (exists(select * FROM Overviewtabelle WHERE PARENT_NR = new.RECORD_NUMBER)) then begin Overviewtabelle.PARENT_NAME = new.NAME end END Danke für Hinweise Erich |
AW: Anfängerfrage: TRIGGER - Andere Tabelle aktualisieren
Grundsätzlich sieht eine Schleife in PL/SQL so aus
SQL-Code:
In Deinem Fall aber eher
for select
<Feldliste> from <Tabelle> where <Bedingung> into <Variablen> do begin end
SQL-Code:
update
OverviewTabelle set PARENT_NAME = new.NAME where WHERE PARENT_NR = new.RECORD_NUMBER; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:06 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz