Search Postgresql Archives

FW: Re: Shouldn;t this trigger be called?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Sorry forgot to cc the list

On Sun, Sep 15, 2019 at 08:42:02AM -0700, Adrian Klaver wrote:
> On 9/15/19 8:33 AM, stan wrote:
> > I have defined this function:
> > 
> > CREATE FUNCTION fix_customer_types_case()
> > 
> > and this trigger:
> > 
> > CREATE TRIGGER fix_customer_types_case_trig BEFORE INSERT OR UPDATE ON customer
> > FOR EACH ROW EXECUTE FUNCTION fix_customer_types_case();
> > 
> > and I put a RAISE NOTICE so I can tell if the function is called. Yet when I
> > do a :
> > 
> > \copy to bring data into this table, I do not see the notice.
> 
> What is the actual command you are using?


 \COPY customer(name, location, status , c_type , bill_attention , bill_addresse , bill_address_1 , bill_address_2 , bill_city , bill_state ,  bill_country , ship_attention , ship_addresse , ship_address_1 , ship_address_2, ship_city ,ship_state  ) from '/home/stan/pm_db/live_data/ready/customer.csv'  DELIMITER ','  CSV HEADER ;

and here is the function

CREATE FUNCTION fix_customer_types_case()
RETURNS trigger AS $$
BEGIN
        if NEW.c_type  IS NOT NULL
	THEN
		NEW.c_type := upper(cast( NEW.c_type AS TEXT));
	END IF ;
        if NEW.status  IS NOT NULL
	THEN
  		RAISE NOTICE 'Called With %', NEW.status;
		NEW.status := upper(cast( NEW.status AS TEXT));
	END IF ;
	RAISE NOTICE 'Left With With %', NEW.status;
	RAISE NOTICE 'Left With With %', NEW.c_type;
        return NEW;
END;
$$ 
LANGUAGE PLPGSQL;

if I do an insert this function is called. However it IS NOT called for the
above copy command. How can I fix that?

This line from the page you referenced implies this should work, but i must be
doing something wrong:

COPY FROM will invoke any triggers and check constraints on the destination
table. However, it will not invoke rules.


-- 
"They that would give up essential liberty for temporary safety deserve
neither liberty nor safety."
						-- Benjamin Franklin





[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]

  Powered by Linux