Re: [SQL] VARCHAR(50), CHAR(50) or TEXT ?

Поиск
Список
Период
Сортировка
От Bruce Momjian
Тема Re: [SQL] VARCHAR(50), CHAR(50) or TEXT ?
Дата
Msg-id 199905131607.MAA16686@candle.pha.pa.us
обсуждение исходный текст
Ответ на Re: [SQL] VARCHAR(50), CHAR(50) or TEXT ?  (Tom Lane <tgl@sss.pgh.pa.us>)
Ответы Re: [SQL] VARCHAR(50), CHAR(50) or TEXT ?
Список pgsql-sql
> Henrik Steffen <webmaster@city-map.de> writes:
> > But, what is the difference between VARCHAR and TEXT ?
> 
> Almost none.  VARCHAR won't let you go beyond the stated maximum length,
> whereas TEXT has no specific upper limit.  Otherwise they are stored
> in exactly the same way.  (At least in Postgres ... dunno about other
> DBMSs.)
> 
> I'd be inclined to use TEXT unless the maximum length were really an
> important part of the semantics of the data for my application.  If
> you find yourself saying "Well, I *think* it'll never go beyond N
> characters, but maybe I should add a little slop for safety" then
> I'd say forget all about VARCHAR and use TEXT.  If you find yourself
> saying "it *had better not* go beyond N characters, because that
> app over there will crash if it does" then use VARCHAR to enforce the
> limit.

Don't forget, char() has a performance benefit over varchar()/text. 
varchar() allows you to document/clip a field to a specific lenght. 
Some people like that for fixed-type fields, like "A" for active, "R"
for retired.  char(1) documents it is only on character too.  See the
FAQ for info on this.

--  Bruce Momjian                        |  http://www.op.net/~candle maillist@candle.pha.pa.us            |  (610)
853-3000+  If your life is a hard drive,     |  830 Blythe Avenue +  Christ can be your backup.        |  Drexel Hill,
Pennsylvania19026
 


В списке pgsql-sql по дате отправления:

Предыдущее
От: Tom Lane
Дата:
Сообщение: Re: [SQL] VARCHAR(50), CHAR(50) or TEXT ?
Следующее
От: Tom Lane
Дата:
Сообщение: Re: [SQL] JOIN index/sequential select problem