Announcement

Collapse
No announcement yet.

Syntaxfehler?

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Syntaxfehler?

    Ich möchte eine Funktion für einen Trigger erstellen, doch jedes mal bekomme ich gesagt, dass ein Syntaxfehler "near "ELSE"" besteht, aber ich finde einfach keinen. Seht ihr irgendwas?

    Code:
    CREATE OR REPLACE FUNCTION test_trigger() RETURNS TRIGGER AS
    '
    BEGIN
        IF TG_OP = ''INSERT'' THEN
            NEW.insert_name := current_user;
            NEW.insert_dat = ''now'';
            RETURN NEW;
        END IF;
        ELSE IF TG_OP = ''UPDATE'' THEN
            NEW.aender_name := current_user;
            NEW.aender_dat = ''now'';
            RETURN NEW;
        END IF;
    END;
    ' LANGUAGE 'plpgsql';

  • #2
    Nabend,

    im Normalfalle ist die Syntax einer IF...THEN...ELSE...END Funktion wie folgt:

    CREATE OR REPLACE FUNCTION test_trigger() RETURNS TRIGGER AS
    '
    BEGIN
    IF TG_OP = ''INSERT'' THEN
    NEW.insert_name := current_user;
    NEW.insert_dat = ''now'';
    RETURN NEW;
    ELSE
    IF TG_OP = ''UPDATE'' THEN
    NEW.aender_name := current_user;
    NEW.aender_dat = ''now'';
    RETURN NEW;
    END IF;
    END IF;
    END;
    ' LANGUAGE 'plpgsql';

    Comment

    Working...
    X