Firebird Documentation IndexFirebird ODBC/JDBC-Treiber-Handbuch → Firebird-Ereignisse
Firebird Home Firebird Home Zurück: Verwendung mit ClarionFirebird Documentation IndexNach oben: Firebird ODBC/JDBC-Treiber-HandbuchWeiter: Den Treiber dazu veranlassen, auf Ereignisse zu warten

Kapitel 6. Firebird-Ereignisse

Inhaltsverzeichnis

Den Treiber dazu veranlassen, auf Ereignisse zu warten

Um die Verwendung von Firebird-Ereignissen mit dem ODBC/JDBC-Treiber zu veranschaulichen, verwenden wir die Beispieldatenbank employee.fdb und arbeiten mit der Tabelle SALES. Diese Tabelle enthält einen AFTER INSERT-Trigger POST_NEW_ORDER, der die Anweisung POST_EVENT 'new_order'; enthält. Seine Wirkung besteht darin, einem Listener auf der Clientseite zu signalisieren, wenn ein neuer Datensatz in SALES übergeben wird.

Nehmen wir an, dass die Tabelle auch einen BEFORE UPDATE-Trigger hat, der ein Ereignis "change_order" in nachfolgenden Operationen veröffentlicht, wenn das Feld ORDER_STATUS geändert wird.

Tipp

Der Trigger BEFORE UPDATE existiert nicht, dieses Szenario dient nur zur Veranschaulichung, aber Sie könnten es erstellen, wenn Sie möchten:

CREATE OR ALTER TRIGGER BI_SALES FOR SALES
ACTIVE BEFORE UPDATE
AS BEGIN
  IF (NEW.ORDER_STATUS = 'new') THEN
  BEGIN
     NEW.ORDER_STATUS = 'open';
     POST_EVENT 'change_order';
  END
END
        

Für unsere Demo müssen wir einen neuen Datensatz in SALES einfügen. Das Feld ORDER_STATUS auf dem neu eingefügten Datensatz enthält den Standardwert 'new'. Nach dem Festschreiben, indem das Ereignis 'new_order' gepostet wird, möchten wir zurückgehen und etwas im neuen Datensatz ändern. Wenn Sie dies tun, überprüft unser BEFORE UPDATE-Trigger BI_SALES, ob der Wert von ORDER_STATUS immer noch 'new' ist und wenn ja, dann wird es in "open" ändern und das Ereignis "change_order" veröffentlichen.

Anmerkung

Es interessiert uns nicht wirklich, wie sich das Einfügen und Ändern des Datensatzes auf den Datenbankzustand auswirkt. Die Idee hier ist, zu zeigen, wie der Treiber für die Verwaltung von mehreren Ereignissen eingerichtet wird.

Zurück: Verwendung mit ClarionFirebird Documentation IndexNach oben: Firebird ODBC/JDBC-Treiber-HandbuchWeiter: Den Treiber dazu veranlassen, auf Ereignisse zu warten
Firebird Documentation IndexFirebird ODBC/JDBC-Treiber-Handbuch → Firebird-Ereignisse