Re: Function args: TEXT -vs- VARCHAR?

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: David Johnston <polobo(at)yahoo(dot)com>
Cc: pgsql-sql(at)postgresql(dot)org
Subject: Re: Function args: TEXT -vs- VARCHAR?
Date: 2013-11-13 17:51:59
Message-ID: 17777.1384365119@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

David Johnston <polobo(at)yahoo(dot)com> writes:
> Tom Lane-2 wrote
>> skinner(at)(dot)co (Craig R. Skinner) writes:
>>> An explicit table of datatype & what's "silently swallowed" would be
>>> valuable to clarify this topic that's said to be often repeatedly asked.

>> Can't be asked that often, as that text has been untouched for more
>> than a dozen years ...

> s/some/parenthetical/ ?

[ thinks for a bit ] Actually, the existing text is wrong/misleading
in another way, since it implies that a PL implementation *could* enforce
parameter typmods if it wanted. It can't, because the information isn't
even stored by CREATE FUNCTION. So we do need to do something about this
text. Perhaps something like this:

The full SQL type syntax is allowed for declaring a function's arguments
and return value. However, parenthesized type modifiers (e.g., the
precision field for type numeric) are discarded by CREATE FUNCTION. Thus
for example "CREATE FUNCTION foo (varchar(10)) ..." is exactly the same as
"CREATE FUNCTION foo (varchar) ...".

regards, tom lane

In response to

Responses

Browse pgsql-sql by date

  From Date Subject
Next Message David Johnston 2013-11-13 17:59:42 Re: Function args: TEXT -vs- VARCHAR?
Previous Message David Johnston 2013-11-13 17:14:06 Re: Function args: TEXT -vs- VARCHAR?