agora inbox for pgsql-sql@postgresql.org
help / color / mirror / Atom feedFrom: David Johnston <polobo@yahoo.com>
To: pgsql-sql@postgresql.org
Subject: Re: Function args: TEXT -vs- VARCHAR?
Date: Wed, 13 Nov 2013 09:59:42 -0800 (PST)
Message-ID: <1384365582722-5778200.post@n5.nabble.com> (raw)
In-Reply-To: <17777.1384365119@sss.pgh.pa.us>
References: <CAHZ=uVAOB9H9jS2BGnu9jDKosxapKY2_M+arf+-kC1fwCSgvfg@mail.gmail.com>
<20131113130308.GA17439@teak.britvault.co.uk>
<20131113141718.GA29223@teak.britvault.co.uk>
<CAFj8pRBhCirj16X0-toyLg85mnJ=wa98V5U941Szw6aNnzifaw@mail.gmail.com>
<20131113142515.GB29223@teak.britvault.co.uk>
<52838DF0.8040708@gmail.com>
<20131113155113.GA26600@teak.britvault.co.uk>
<6365.1384360602@sss.pgh.pa.us>
<1384362845994-5778192.post@n5.nabble.com>
<17777.1384365119@sss.pgh.pa.us>
List-Unsubscribe: <mailto:majordomo@postgresql.org?body=unsub%20pgsql-sql>
Tom Lane-2 wrote
> David Johnston <
> polobo@
> > writes:
>> Tom Lane-2 wrote
>>> skinner@.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) ...".
+1
FWIW I have always read that as "if you care about stuff like precision and
text lengths you have to deal with it yourself inside your function." Not
that the PL implementation itself would be capable to doing something with
the information. Since CREATE FUNCTION was doing the stripping I reasoned
out the actual PL language interpreter never even saw the info.
David J.
--
View this message in context: http://postgresql.1045698.n5.nabble.com/Function-args-TEXT-vs-VARCHAR-tp5777968p5778200.html
Sent from the PostgreSQL - sql mailing list archive at Nabble.com.
--
Sent via pgsql-sql mailing list (pgsql-sql@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-sql
view thread (17+ messages) latest in thread
Message-ID: <1384365582722-5778200.post@n5.nabble.com>
Permalink: ../1384365582722-5778200.post@n5.nabble.com/
Also on: postgresql.org/message-id/1384365582722-5778200.post@n5.nabble.com
reply
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-sql@postgresql.org
Cc: polobo@yahoo.com
Subject: Re: Function args: TEXT -vs- VARCHAR?
In-Reply-To: <1384365582722-5778200.post@n5.nabble.com>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox