Hello,all

I use your a example of PL/pgSQL, but I found some errors when I execute 
these codes. The details are followings,

First, I create a exam.sql that includes these codes as followings,

CREATE TABLE emp (
   empname text,
   salary int4,
   last_date datetime,
   last_user name);

CREATE FUNCTION emp_stamp () RETURNS OPAQUE AS'
   BEGIN
       -- Check that empname and salary are given
       IF NEW.empname ISNULL THEN
           RAISE EXCEPTION ''empname cannot be NULL value'';
       END IF;
       IF NEW.salary ISNULL THEN
           RAISE EXCEPTION ''% cannot have NULL salary'', NEW.empname;
       END IF;

       -- Who works for us when she must pay for?
       IF NEW.salary < 0 THEN
           RAISE EXCEPTION ''% cannot have a negative salary'', NEW.empname;
       END IF;

       -- Remember who changed the payroll when
       NEW.last_date := ''now'';
       NEW.last_user := getpgusername();
       RETURN NEW;
   END;
' LANGUAGE 'plpgsql';

CREATE TRIGGER emp_stamp BEFORE INSERT OR UPDATE ON emp
   FOR EACH ROW EXECUTE PROCEDURE emp_stamp();



Secondly, I execute exam.sql and the postgress can create the table emp,
the function emp_stamp() and the trigger emp_stamp seccessfully.But when I 
insert one record to table emp, there are some errors on the screen.
  the insert statement is followings,
     INSERT INTO emp Values('','','20001220','raymond');

the error of screen is:
NOTICE: plpgsql: ERROR during compile of emp_stamp near line 1
"RROR: parse error at or near "

Why? and what wrong is it? Please give me reply as possible as you can. 
Thanks!









_________________________________________________________________________
Get Your Private, Free E-mail from MSN Hotmail at http://www.hotmail.com.


---------------------------(end of broadcast)---------------------------
TIP 3: if posting/reading through Usenet, please send an appropriate
subscribe-nomail command to [EMAIL PROTECTED] so that your
message can get through to the mailing list cleanly

Reply via email to