On Thu, Jul 21, 2005 at 07:10:03PM +1000, Ezequiel Tolnay wrote: > * Stored procedures: Although similar to functions, SP always return an > execution status rather than a result, but provide the caller with the > equivalent of running several sql instructions, as if running a script. > Unlike functions, their results cannot be utilised by most other > statements, with the exception of INSERT [...] EXECUTE [...]. Their main > attractive is to simplify the detachment between interface and > implementation. Perhaps this could be achieved extending some features > of functions, perhaps enabling a combination of SETOF result (which > needs an externally defined result type) and OUT parameters (which is > flexible but restricted to a single row), or handled similarly as the > current possibility to return cursors. I'm not understanding the difference here. pl/pgsql can run just about anything, including table creates/drops. Is it the return type you're worried about. In mine I just return TRUE generally... > * Set the SERIAL automatically generated sequences as system objects, > thus allowing them to be hidden in the admin GUIs They are already marked as system objects. Tables are 'r', sequences 'S', indexes 'i', etc... Perhaps you should open a bug on whatever admin gui you're using to hide sequences. > * Create a ROWSET variable type in plpgsql that would function like a > temporary but in-memory table. Support for it would have to be added for > plpgsql's SELECT, UPDATE and DELETE statements. How is this different from a temporary table? > * Make temporary schemes visible (and accessible) only to its current > owner/user, and create a tool to clear currently unused temporary > schemes (for instance during backups, or when duplicating a database) Temporary schemas? Temporary tables go into a tempoary schema that is automatically removed when you disconnect. What would more temporary schemas acheive? > * Allow inserting new columns in arbitrary positions with ALTER TABLE > tab ADD COLUMN newcol [ AFTER | BEFORE ] curcol, just like mysql does. This wouldn't be too hard I think, but maybe I'm missing something... Have a nice day, -- Martijn van Oosterhout <kleptog@xxxxxxxxx> http://svana.org/kleptog/ > Patent. n. Genius is 5% inspiration and 95% perspiration. A patent is a > tool for doing 5% of the work and then sitting around waiting for someone > else to do the other 95% so you can sue them.
Attachment:
pgpfqJAFqDovQ.pgp
Description: PGP signature