thanks karlgoethebier! I was not aware of this. PL/Perl can return hashrefs and arrayrefs too! This removes a lot of boilerplate from scripts and puts it exactly where it belongs to: in the guts and out of sight.
Update: the following caveat does not apply to the recent versions of PL/Python. See nodes below.
On the other hand, it offers something similar for python but with this caveat:
As of PostgreSQL 7.4, PL/Python is only available as an "untrusted" language, meaning it does not offer any way of restricting what users can do in it. It has therefore been renamed to plpythonu. The trusted variant plpython might become available again in future, if a new secure execution mechanism is developed in Python. The writer of a function in untrusted PL/Python must take care that the function cannot be used to do anything unwanted, since it will be able to do anything that could be done by a user logged in as the database administrator. Only superusers can create functions in untrusted languages such as plpythonu.
bw, bliako
| [reply] |
I can't find that in postgres docs, so it looks like you copied that from docs of an old version (version 9.4 is not even supported anymore) (this particular content is still true, though). Annoyingly, google often serves up old pages before more up-to-date ones.
(There is a 'current' link on top of every postgres doc page, and a link for all supported versions, as well as a link into the docs of the development branch, at the moment 14devel -- and btw: 14beta is expected in a few weeks)
Ah well...
| [reply] |
| [reply] |
| [reply] |