Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (Deutsch) » SQL Anywhere Server - SQL-Referenzhandbuch » Verwendung von SQL » SQL-Sprachelemente » Suchbedingungen

 

Bedingungen für den Triggervorgang

Syntax
Triggervorgang:
INSERTING | DELETING
| UPDATING [ ( Spaltenname-Zeichenfolge ) ] | UPDATE ( Spaltenname )
Bemerkungen

Die Bedingungen für den Triggervorgang können nur bei Triggern verwendet werden. Das Ausführen von Aktionen hängt von der Art des Vorgangs ab, der das Auslösen des Triggers verursacht hat.

Das Argument für UPDATING ist eine Zeichenfolge in Apostrophen (zum Beispiel: UPDATING( 'mycolumn' )). Das Argument für UPDATE ist ein Bezeichner (zum Beispiel UPDATE( mycolumn )). Beide Versionen sind vollständig kompatibel und werden zur Kompatibilität mit dem SQL-Dialekt der Datenbankmanagement-Systeme anderer Anbieter einbezogen.

Wenn Sie eine UPDATING- oder UPDATE-Funktion angeben, müssen Sie auch eine REFERENCING-Klausel in der CREATE TRIGGER-Anweisung zur Vermeidung von Syntaxfehlern definieren.

Beispiel

Der folgende Trigger gibt eine Meldung aus, die den Anlass seines Auslösens anzeigt:

CREATE TRIGGER tr BEFORE INSERT, UPDATE, DELETE
ON sample_table
REFERENCING OLD AS t1old
FOR EACH ROW
BEGIN
    DECLARE msg varchar(255);
    SET msg = 'This trigger was fired by an ';
    IF INSERTING THEN
        SET msg = msg || 'insert'
    ELSEIF DELETING THEN
        set msg = msg || 'delete'
    ELSEIF UPDATING THEN
        set msg = msg || 'update'
    END IF;
    MESSAGE msg TO CLIENT
END;
Siehe auch