From: | Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org> |
---|---|
To: | Juan <smalltalker(dot)marcelo(at)gmail(dot)com> |
Cc: | Ayuda <pgsql-es-ayuda(at)postgresql(dot)org> |
Subject: | Re: guardar campos bytea |
Date: | 2012-06-05 17:20:04 |
Message-ID: | 1338916567-sup-1883@alvh.no-ip.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Excerpts from Juan's message of mar jun 05 12:48:25 -0400 2012:
> Hola gente
>
>
> Tengo que guardar unos campos binarios en un campo bytea. en verdad estoy
> importando desde un archivo access
> y el campo del access viene como image, equivalente a nuestro bytea.
> Ahora bien, intento entender como se haria segun lo que entendi de la
> documentacion podria hacerlo de la sig manera:
La tercera alternativa (mucho mejor) es usar sentencias preparadas y
evitarte tener que hacer jugarretas con el texto.
> 1) cada byte escapearlo y ponerlo en 3 digitos en formato octal o sea ej.
> el byte a codificar es 7F (hexadecimal) me quedaria //177
> NOTA: no es necesario escapear todos los caracteres pero tampoco esta
> prohibido (deberia escapear los no imprimibles etc).
>
> 2) por cada byte podria usar el /x escape ( modo hexa) fijense que parece
> mas compacto o sea el 7F del caso anterior
> quedaria /x7F y listo (1 byte menos sin contar que el cero /x0
> ahorra mas.)
>
> AHORA,, es correcto esto?
Los / son todos \.
En el caso 2, si usas \x estás obligado a escapar todos los caracteres,
y todos deben ser de ancho 2. Nota que el \x se pone al principio de la
cadena solamente, no frente a cada caracter. O sea \x7f7f en vez de
\\177\\177.
--
Álvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>
From | Date | Subject | |
---|---|---|---|
Next Message | Mario Soto Cordones | 2012-06-05 17:21:42 | RE: guardar campos bytea |
Previous Message | Juan | 2012-06-05 16:48:25 | guardar campos bytea |