Re: WIP: default values for function parameters
От | Pavel Stehule |
---|---|
Тема | Re: WIP: default values for function parameters |
Дата | |
Msg-id | 162867790812010540i69d3cc46p6d2570f45585f456@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: WIP: default values for function parameters (Peter Eisentraut <peter_e@gmx.net>) |
Ответы |
Re: WIP: default values for function parameters
|
Список | pgsql-hackers |
2008/11/30 Peter Eisentraut <peter_e@gmx.net>: > On Thursday 27 November 2008 00:14:19 Pavel Stehule wrote: >> I am sending actualized versions - I accepted Tom's comments - default >> expressions are serialised List stored in text field. > > OK, this is looking pretty good. > > There is a structural problem that we need to address. With your patch, > pg_dump produces something like this: > > CREATE FUNCTION foo(a integer = 1, b integer = 2, c integer = 3) RETURNS > integer > LANGUAGE sql > AS $_$ SELECT $1 + $2 + $3; $_$; > > ALTER FUNCTION public.foo(a integer = 1, b integer = 2, c integer = 3) OWNER > TO peter; > > > The second command is rejected because default values are only accepted in > CREATE FUNCTION. > > There are two ways to fix this, both having some validity: > > 1. We create a second version of pg_get_function_arguments() that produces > arguments without default values decoration. This is probably the > technically sound thing to do. I did it. new version is attached Regards Pavel Stehule > > 2. We accept the default values specification and ignore it silently. Note > that we already silently ignore the argument names. ALTER FUNCTION foo(a > int, b int) will also act on a function defined as foo(x int, y int). > > Comments? >
Вложения
В списке pgsql-hackers по дате отправления: