Re: modificar tipo de dato postgres

From: Jaime Casanova <jaime(dot)casanova(at)2ndquadrant(dot)com>
To: Stephen Amell <StephenAmell(at)inbox(dot)lv>
Cc: Ayuda <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: modificar tipo de dato postgres
Date: 2018-04-17 21:25:44
Message-ID: CAJGNTeOYqf1+7xMsU0Bw4NmJw8ELCo0zQ2J-cO4NASSHW6bV7Q@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

2018-04-17 11:32 GMT-05:00 Stephen Amell <StephenAmell(at)inbox(dot)lv>:
> Solo quiero decir que con este comentario, Jaime, me tiraste media
> biblioteca de SQL al tacho.
>
> Como que char, varchar y text son lo mismo!!!??? Me puse a leer y si, es así
> nomas [1]... entonces, ¿se puede usar indices char ops sobre text? ¿a que
> costo? Me imagino que indices por text serán muy pesados tanto como el campo
> en si.
>

ja ja..

empecemos porque no dije nada de char. varchar y text son
intercambiables pero char si actúa diferente (por qué el estándar SQL
manda que actue diferente).

así que no reemplaces tus char por varchar ni text. la diferencia es
que varchar y text almacenan exactamente lo que le pediste que
almacene y muestra exactamente lo que almacenaste mientras que char
ignora los espacios en blanco al final pero siempre completa con
blancos la longitud de la cadena!!!

con char completa la cadena con blancos al final aunque nunca muestra
los espacios al final (aunque tu se lo hayas pasado!)

postgres=# select char_length('jaime'::char(15));
char_length
-------------
5
(1 fila)

postgres=# select char_length('jaime '::char(15));
char_length
-------------
5
(1 fila)

postgres=# select octet_length('jaime '::char(15));
octet_length
--------------
15
(1 fila)

mientras que con varchar o text

postgres=# select char_length('jaime'::varchar(15));
char_length
-------------
5
(1 fila)

postgres=# select char_length('jaime '::varchar(15));
char_length
-------------
6
(1 fila)

postgres=# select octet_length('jaime '::varchar(15));
octet_length
--------------
6
(1 fila)

--
Jaime Casanova www.2ndQuadrant.com
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Néstor Ramires 2018-04-18 14:15:31 Construcción de multipunto a partir de puntos en polígono
Previous Message Stephen Amell 2018-04-17 16:32:30 Re: modificar tipo de dato postgres