1. stored procedures are now called functions
2. unlike ms tsql, in postgres query analyzer you can't test
conditional statements and variables outside of a function. this makes
debugging really hard.
3. inside the function single quotes must be escaped because your
function is entered in as a string literal.
4. to return recordsets you must create a custom return TYPE and use a
FOR loop with %ROWTYPE to interate thru the data.
5. you can overload functions. two function with the same name but
different input fn_foo(int) OR fn_foo(int, varchar).
6. temp tables don't work well in functions unless you make them
dynamically with execute. instead use normal tables and your pid.
favorite editor: editplus w/ psql definitions