Re: Help, my developers are killing me with varchar2(4000)
From: DA Morgan <damorgan_at_psoug.org>
Date: Fri, 15 Aug 2008 09:34:13 -0700
Message-ID: <1218818044.395379@bubbleator.drizzle.com>
>
> I don't think VARCHAR2s are rounded up at all in the
> tables, which is what I thought we were talking about.
> Sure: a bind variable might "adjust" the length of a
> VARCHAR2 parameter, but that does not replace the table
> column's definition in the dictionary?
>
> IOW: the bind variable might not store data very efficiently
> but the column in the table doesn't stop having its max
> size checked because of that?
Date: Fri, 15 Aug 2008 09:34:13 -0700
Message-ID: <1218818044.395379@bubbleator.drizzle.com>
Noons wrote:
> DA Morgan wrote,on my timestamp of 15/08/2008 11:17 AM:
>
>>>> >>>> So what should the default size of a varchar2 be then? 7? 12? >>>> 23? 0? >>> >>> >>> does it really matter? it's variable length anyway: >>> the size is a constraint, not an allocation issue. >> >> As with many things ... depends ... >> >> For example when working with bind variables VARCHAR2s are rounded to >> the next highest length that can be 32 bytes, 128 bytes, 2000 bytes, >> or 4000 bytes.
>
> I don't think VARCHAR2s are rounded up at all in the
> tables, which is what I thought we were talking about.
> Sure: a bind variable might "adjust" the length of a
> VARCHAR2 parameter, but that does not replace the table
> column's definition in the dictionary?
>
> IOW: the bind variable might not store data very efficiently
> but the column in the table doesn't stop having its max
> size checked because of that?
I specifically said "bind variables." My intention was to be clear and concise and to indicate that in some cases it does matter with respect to allocation.
-- Daniel A. Morgan Oracle Ace Director & Instructor University of Washington damorgan_at_x.washington.edu (replace x with u to respond) Puget Sound Oracle Users Group www.psoug.orgReceived on Fri Aug 15 2008 - 11:34:13 CDT