Re: Varchar vs varchar(64)

From: "Albe Laurenz" <laurenz(dot)albe(at)wien(dot)gv(dot)at>
To: "Rob Richardson *EXTERN*" <Rob(dot)Richardson(at)rad-con(dot)com>, <pgsql-general(at)postgresql(dot)org>
Subject: Re: Varchar vs varchar(64)
Date: 2008-10-21 15:44:47
Message-ID: D960CB61B694CF459DCFB4B0128514C202A1AB28@exadv11.host.magwien.gv.at
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Rob Richardson wrote:
> The database we install at our customers as part of our
> product includes an event_history table. For some reason
> lost in the mists of time, the most important field in that
> table, the description, is a varchar field specified to be
> only 64 characters long. This leads me to a more fundamental
> question: why specify the length of a varchar field at all?
> Is there a big difference between the amount of disk space
> taken up by "abc" stored in a varchar(64) field and stored in
> a varchar field? How much space does an unspecified-length
> varchar field take up? Are there other reasons to use
> varchar(64) instead of varchar?

You can't have "varchar" without a length in parentheses,
as far as I know.

But you can use "text" which is essentially the same thing.

I can think of two reasons to use varchar(n) instead of text:
- you deliberately want to limit the amount of characters.
- you want to index the column (indexes have a maximum row size).

It is not a performance issue, however, and there is no
wasted space either.

Yours,
Laurenz Albe

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Karl Nack 2008-10-21 15:53:35 Re: How best to implement a multi-table constraint?
Previous Message Peter Eisentraut 2008-10-21 15:39:46 Re: Annoying Reply-To