[Pgsql-ayuda] Re: Conversion a Base64
Alvaro Herrera
alvherre@dcc.uchile.cl
Wed, 8 Oct 2003 19:06:54 -0400
On Wed, Oct 08, 2003 at 10:59:41PM +0000, Edwin Quijada wrote:
> create table a (uno int);
> "insert into a values ('`mimencode foto.jpg`');"
>
> Y para extraerlo:
> "select uno from a limit 1" | mimencode -u -o otra.jpg
>
> Lo que no acabo de entender es porque declaraste uno tipo int no debberia
> ser tipo text?
Huh, claro. Disteclia. Tiene que ser TEXT.
> Este codigo no convertia la foto en byte para ser almacenada en un campo
> tipo text?
Ojo que eso funciona usando el shell... no es necesariamente lo que uno
haria en un programa normal. Por ej. en Perl podrias usar MIME::Base64
para la codificacion y decodificacion. O bien usar DBI y como dijo
Martín, los métodos prepare() y execute() con un "placeholder" donde
pones la cadena de bytes de la foto. No lo he probado, pero _debería_
funcionar.
> Cual es el tamano de una tupla en Postgres? 8k?
Bueno, depende de la tupla. Si te refieres al tamaño máximo,
considéralo ilimitado. Cada campo está limitado a 1 GB (TEXT, BYTEA,
algunos otros).
--
Alvaro Herrera (<alvherre[a]dcc.uchile.cl>)
"In fact, the basic problem with Perl 5's subroutines is that they're not
crufty enough, so the cruft leaks out into user-defined code instead, by
the Conservation of Cruft Principle." (Larry Wall, Apocalypse 6)