Re: Why doesn't this pgsql function compile?

From: "Joe Conway" <joseph(dot)conway(at)home(dot)com>
To: "Larry Rosenman" <ler(at)lerctr(dot)org>, "PostgreSQL SQL List" <pgsql-sql(at)postgresql(dot)org>
Subject: Re: Why doesn't this pgsql function compile?
Date: 2001-06-15 22:42:53
Message-ID: 005101c0f5ec$83f56b80$d7d310ac@jecw2k1
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

> When this PLpgsql function gets called on the trigger
> it fails compilation on the last line.
>
> What am I doing wrong?
>
>

<snip>

> IF TG_OP = ''INSERT''
> THEN add_ip_route(host(network(NEW.netblock)),
> host(netmask(NEW.netblock)),
> get_router_ethernet(NEW.router),
> get_router_nexthop(NEW.router),
> get_router_nexthop_user(NEW.router),
> get_router_nexthop_password(NEW.router),
> get_router_nexthop_enpass(NEW,router));
> return NEW;
> END IF;

Don't you need a "PERFORM" between the "THEN" and "add_ip_route(. . ." above
(and similar places below)?

-- Joe

> IF TG_OP = ''DELETE''
> THEN del_ip_route(host(network(OLD.netblock)),
> host(netmask(OLD.netblock)),
> get_router_ethernet(OLD.router),
> get_router_nexthop(OLD.router),
> get_router_nexthop_user(OLD.router),
> get_router_nexthop_password(OLD.router),
> get_router_nexthop_enpass(OLD,router));
> return OLD;
> -- TG_OP must be UPDATE to get here....
> IF OLD.router NOTNULL and get_router_nexthop(OLD.router) NOTNULL
> AND NEW.router NOTNULL and OLD.router != NEW.router
> THEN del_ip_route(host(network(OLD.netblock)),
> host(netmask(OLD.netblock)),
> get_router_ethernet(OLD.router),
> get_router_nexthop(OLD.router),
> get_router_nexthop_user(OLD.router),
> get_router_nexthop_password(OLD.router),
> get_router_nexthop_enpass(OLD,router));
> END IF;
> IF NEW.router NOTNULL and get_router_nexthop(NEW.router) NOTNULL
> THEN add_ip_route(host(network(NEW.netblock)),
> host(netmask(NEW.netblock)),
> get_router_ethernet(NEW.router),
> get_router_nexthop(NEW.router),
> get_router_nexthop_user(NEW.router),
> get_router_nexthop_password(NEW.router),
> get_router_nexthop_enpass(NEW,router));
> END IF;
> return NEW;
> END;'
> LANGUAGE 'plpgsql';

In response to

Responses

Browse pgsql-sql by date

  From Date Subject
Next Message Larry Rosenman 2001-06-15 22:43:53 Re: Why doesn't this pgsql function compile?
Previous Message Alex Pilosov 2001-06-15 22:27:03 Re: Why doesn't this pgsql function compile?