Re: ERROR: value too long for type character

Поиск
Список
Период
Сортировка
От Doug Fields
Тема Re: ERROR: value too long for type character
Дата
Msg-id 5.1.0.14.2.20020521165042.01ed2b50@mail.pexicom.com
обсуждение исходный текст
Ответ на Re: ERROR: value too long for type character varying(255)  (Neil Conway <nconway@klamath.dyndns.org>)
Ответы Re: ERROR: value too long for type character  (Stephan Szabo <sszabo@megazone23.bigpanda.com>)
Список pgsql-general
> > Do you know how I can tell it to "silently truncate" the data as I believe
> > it used to?
>
>Is there a reason you can't just use TEXT? It will be stored the same
>internally...

The only reason being that I don't want to waste space storing arbitrarily
long pieces of information.

I was not aware that TEXT is just as (in)efficient as VARCHAR, though. If
that is truly the case, I will consider using TEXT in some places, but only
when I am very careful in the INSERT and UPDATE clauses so as not to store
too long things.

>But the most obvious way I can think of to do what you're asking is
>to define a rule to replace the value inserted with a call to
>substring().

So, basically:

1) There's absolutely no way to get back the 7.1.3 "silent truncation"
behavior (which is, IMO, stupid, I like the non-standard truncation behavior)
2) You have to truncate on INSERT/UPDATE and continue using VARCHAR(x)
3) Instead of 2, you can use TEXT

Several others have asked this question since 7.2 appeared but none
received a response to #1.

Thanks,

Doug


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

Предыдущее
От: Neil Conway
Дата:
Сообщение: Re: ERROR: value too long for type character varying(255)
Следующее
От: "Gaston Micheri"
Дата:
Сообщение: Graphical Tool