Informix - .unl con imagenes

 
Vista:

.unl con imagenes

Publicado por anna rojas (2 intervenciones) el 17/08/2009 23:21:00
Necesito abrir una base de datos, pero nose por donde empezar... en una carpeta tengo un archivo de sql y varios en .unl, lo que me interesa es extraer las imagenes que un .unl contiene, pero nose cómo hacerlo. Las .unl que contienen texto ya las pude convertir, pero el .unl que tiene las imagenes no.. que puedo hacer????
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:.unl con imagenes

Publicado por santi (3 intervenciones) el 26/08/2009 19:19:00
Creo que ....
1.- Debes acceder a la base de daos directamente. El .UNL lo genera Informix a su manera.
2.- Hay que buscar un lenguaje que te permita acceder a la base de datos y guardar en contenido Blob en un fichero que luego lo puedas manejar.
3.- Yo lo he hecho con Pytho y accediendo a un Informix en HPUX. No eran imagenes pero si documentos ofimaticos.

Mi programa fue (en windows):
Tienes que cambiar los datos de conexion y la SELECT
Sería conveniente que guardades el archivo con la extension que luego vaya a tener, .jpg, .bmp etcc.. y el os.system te lo abriría.

Descargate Python de su web y busca informixdb para python. Ahora no recuerdo donde lo encontré.

#!/usr/bin/python

import sys
import informixdb
import os

conn = informixdb.connect('datos@bigsuserver', 'informix', 'strombol')

print "InformixDB.version", informixdb.version
print conn.dbms_name, conn.dbms_version
print conn.driver_name, conn.driver_version

cursor = conn.cursor(rowformat = informixdb.ROW_AS_DICT)

cursor.execute("SELECT * FROM gd_archivo WHERE handle=457034") #3000")
print cursor.rowcount
f=open('gd_test.doc', 'wb+')
for row in cursor:
print row.keys()
print row.values()
print len(row['contenido'])
f.write(row['contenido'])

f.close()

# para ahorrarnos tener que abrir el word, lo abro desde aqui
cmd = 'gd_test.doc'
os.system(cmd)

#OJO: para guardar un blob en disco o leerlo hay que abrir el archivo en modo binari, sino no se guardan ni leen bien los datos binarios.

conn.commit()
conn.close()

sys.exit(0)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:.unl con imagenes

Publicado por anna rojas (2 intervenciones) el 27/08/2009 16:47:09
Muchas gracias por tu respuesta Santi!!
oye sólo que esos pasos que me pusiste son de linux??? es que estoy haciendo todo en Windows, crees que se pueda?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar