At 18:48 05/06/2012, you wrote:
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:
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?
si fuese correcto supongo que sin importar como lo importe que
formato deberia quedar lo mismo en el campo,no?
siempre todos los inserts los hago con E'/xxx' ::bytea conversion
de string escapeado a bytea.
Cualquier comentario sera agradecido
Aparte de lo que te han comentado, otra opcion es convertir el
archivo a base64 y guardarlo como TEXT. Eso si, ocupara un poco mas espacio.
saludos
JMDC
-
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