FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Almacenar y bajar PDF en MYSQL Delphi 2010 desktop
Hola foro, llevo algo de tiempo desarrollando un proyecto para la Universidad. Tengo problema, en los requerimientos del sistema se pide, almacenar archivos en formato PDF(tipo repositorio), los cuales pueden ser cargados(aplicación desktop a mysql ) y descargados(consulta el archivo lo baja y almacena físicamente en una ruta del hd) desde el sistema(aplicación desktop).
He estado investigando al respecto y he logrado cargar un archivo en la base de datos con el siguiente codigo
El archivo se almacena en la tabla Archivo, sin embargo no se si sube archivo de forma correcta, adicional a esto, puedo subir archivos con un tamaño <= 512 kb, al intentar subir archivos mas pesados, el sistema se congela y deja de responder, no se si sea un problema de programación o de la base de datos, ya que tengo entendido que para archivos mas pesados es necesario configurar una variable en mysql. El asunto es que ya almacenado el archivo, no se como bajarlo por medio de una consulta y almacenarlo en una ruta del disco, para que el usuario pueda consultarlo. Alguien que pueda apoyarme con este tema, le estaría muy agradecido!. Trabajo en Windows 7, Mysql, Componente Unidac para establecer la conexión a la BD. (Componente para el query, utilizo unidac, pero no tengo problema al trabajar con ADO, BDE, Interbase, etc) |
#2
|
||||
|
||||
Hola marvajes,
Primero que nada en un bloque try-finally, el finally no es donde se captura el "error". El finally es un bloque que se ejecuta luego del try, sin importar si hubo una excepcion, un Break, un Exit, un Continue, etc. Para catpturar errores, se usa el bloque try-except, asi:
Para mas info sobre excepciones se suele recomendar el libro "La Cara Oculta de Delphi", que esta en el FTP del club. Tambien hay mogollon de informacion en el foro e internet Con respecto a tu problema, lo que te falto comentar es como esta definida tu tabla Archivo, no vaya a ser que tenga como limite justamente los 512kb |
#3
|
||||
|
||||
Esta es la forma que yo opero con archivos, no es con los componentes UniDAC pero supongo que para todos es la misma,
Para guardarlo:
Para obtener el archivo:
|
#4
|
|||
|
|||
Muchas gracias por la ayuda.
Muchas gracias por tu ayuda AgustinOrtu, primeramente por la corrección, pues tenia una idea errónea del uso de try finally.
Con el tema de bajar el archivo, solo hice una pequeña modificación al código. Insertar el archivo en la Base de datos
Recuperar el archivo y almacenar en disco duro
Cabe mencionar que inicialmente al recuperar el archivo, este aparecia corrupto o no mostraba el contenido y esto debido justamente como indicaste el limite, utilizado inicialmente BLOB ≈ 64KB, MEDIUMBLOB ≈ 16MB and LONGBLOB ≈ 4GB. Lo deje en MEDIUMBLOB y perfecto. Muchas gracias por la ayuda amigo!. Saludos. |
#5
|
|||
|
|||
Buenas Leyendo este post me cabe una duda.
Y si en vez de guardar el archivo en una ruta especifica pudiera abrirlo con AcroPDF?? Como podria hacerlo. Yo puedo abrir archivos pdf desde rutas especificas pero en mi caso quiero abrir dicho archivo pdf pero desde la propia base de datos sin tener que llevarlo a ningun lugar del disco duro. Esto es posible?? |
#6
|
||||
|
||||
Crea un hilo nuevo con tu duda, no aportas nada a la solución de este hilo.
De todas formas, haz una búsqueda por los foros, es un tema que se ha tratado otras veces. No olvidas repasar nuestra guía de estilo, gracias
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
MySQL y ADO desde Delphi 2010 | mjjj | MySQL | 9 | 21-01-2013 20:03:57 |
No puedo conectar Mysql con delphi 2010 | juanmarchettini | Conexión con bases de datos | 8 | 17-04-2011 21:47:34 |
MySQL y DBNavigator Delphi 2010 | johnytsekieng | Conexión con bases de datos | 4 | 16-02-2011 15:45:48 |
Mysql con delphi 2010 consulta tabla | gdlrinfo | SQL | 6 | 29-09-2010 02:15:39 |
Firebird, Mysql y Delphi 2010 | tec | Varios | 3 | 16-04-2010 16:34:51 |
|