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 <alvhe...@alvh.no-ip.org>
-
Enviado a la lista de correo pgsql-es-ayuda (pgsql-es-ayuda@postgresql.org)
Para cambiar tu suscripci�n:
http://www.postgresql.org/mailpref/pgsql-es-ayuda

Responder a