Re: help with PL/PgSQL bug
От | Mike Mascari |
---|---|
Тема | Re: help with PL/PgSQL bug |
Дата | |
Msg-id | 001201c2b9e1$87155ea0$0102a8c0@mascari.com обсуждение исходный текст |
Ответ на | help with PL/PgSQL bug (Neil Conway <neilc@samurai.com>) |
Ответы |
Re: help with PL/PgSQL bug
|
Список | pgsql-hackers |
----- Original Message ----- From: "Tom Lane" <tgl@sss.pgh.pa.us> > "Mike Mascari" <mascarm@mascari.com> writes: > >> Does Oracle's PL/SQL have a concept of record variables? If so, what > >> do they do in this situation? > > > In Oracle 8, a row of NULLs: > > > 1 CREATE OR REPLACE FUNCTION foo(t IN NUMBER) > > 2 RETURN NUMBER > > 3 IS > > 4 emp_rec employees%ROWTYPE; > > That's a rowtype variable, though, not a record variable. I believe our > code will work the same as Oracle for that case. > 1 CREATE OR REPLACE FUNCTION foo(t IN NUMBER) 2 RETURN NUMBER 3 IS 4 TYPE EmpRec IS RECORD ( 5 id NUMBER, 6 nameVARCHAR(20) 7 ); 8 emp_rec EmpRec; 9 BEGIN10 SELECT *11 INTO emp_rec12 FROM employees13 WHERE id = t;14 RETURN(emp_rec.id);15* END; behaves similarly by returning a NULL value for an unmatched row. FWIW, Mike Mascari mascarm@mascari.com
В списке pgsql-hackers по дате отправления: