Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 25-03-2007
Avatar de casacham
casacham casacham is offline
Miembro
 
Registrado: abr 2006
Ubicación: Cordoba->Argentina. Arboleas->Almeria->España
Posts: 184
Poder: 19
casacham Va por buen camino
Wink Problemas con ADO y JPG - SOLUCIONES!!!?

Hola a TODOS
Voy a plantear un problema que me surgio al mudarme de PARADOX a ADO. Tengo una base de datos compleja, con muchas tablas (10) y con interrelaiones de mediana envergadura. Enla que hay una tabla en particular la que esta destinada a almacenar fotos y para ello cuenta con tres campos para distintas imagenes. La estructura de la base de datos la he creado en Acces de microsoft y los campos destinados a las imagenes son del tipo OLE en microsoft, pero cuando los abro en delphi son BLob. Hasta aqui todo bien.
El problema es que estos campos solo aceptan archivos BMP, ninguna otra extension se puede almacenar en estos campos de ADO y los mismo vale para PARADOX. Asi que he buscado soluciones alternativas: La primera y mas efectiva fue convertir los archivos JPG a BMP segun un codigo muy sencillo encontrado en "TRUCOS" del club delphi. Lo digo por si hay gente viendo esto y esta interesada por algo mas simple. La otra solucion la recibi de un amigo del club: DELPHIUS, que me dio un link del boletin pascal N°11 donde esta la solucion completa. Es decir alli se explica muy bien como hacer para almacenar cualquier tipo de archivo grafico a un campo sin tener que convertir el formato a BMP, lo bueno es que para PARADOX funciona muy bien. Resumiendo, contamos con dos soluciones para almacenar cualquier archivo grafico, cuando quiero aplicarlo a campos de la tabla ADO el problema resurje, solo puedo almacenar BMP y debo convertir los otros formatos a este. Y no deseo hacer eso ya que JPG es menos pesado a la hora de tener una coleccion de ellos en la base de datos.
Quisiera saber si alguien ha programado algo por el estilo (haya podido postear otras extensiones en campos BLOB de ADO) y como lo ha resuelto . Si desean que les de informacion de las soluciones encontradas por mi para estos problemas solo haganlo saber y les mando el codigo explicado paso por paso. Pero recuerden que aqui en el foro tienen todo, yo saque todo de aqui

MUCHISIMAS GRACIAS a todos aquellos que les interesa las bases de datos y son amigos de Delphi y del Club mas grande de pensadores. CLUB DELPHI.

¿Como almacenar en campos BLOB de ADO imagenes no BMP sin tener que convertirlas? Funciona para sistema PARADOX, cual sera para ACCES? o ADO?

Boletin pascal
http://www.latiumsoftware.com/es/pascal/0011.php

Última edición por casacham fecha: 25-03-2007 a las 17:42:11.
Responder Con Cita
  #2  
Antiguo 26-03-2007
Avatar de droguerman
droguerman droguerman is offline
Miembro
 
Registrado: abr 2005
Ubicación: tierra
Posts: 999
Poder: 20
droguerman Va por buen camino
la solución que muestras de boletin pascal es válida solo que en vez de usar el tipo graphics usas el tipo binary.
__________________
self.free;
Responder Con Cita
  #3  
Antiguo 26-03-2007
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola casacham
Creo que estas usando segun entiendo access ?
Si es asi, uso sin problemas para fotos, de cualquier tipo, el campo memo.
Te recomiendo que cambies a ese tipo y veremos que pasa, nos comentas.
Saludos
Responder Con Cita
  #4  
Antiguo 28-03-2007
Avatar de casacham
casacham casacham is offline
Miembro
 
Registrado: abr 2006
Ubicación: Cordoba->Argentina. Arboleas->Almeria->España
Posts: 184
Poder: 19
casacham Va por buen camino
RESPUESTA de CASACHAM

Gracias a todos los que respondieron, gracias a Karal y a Droguerman. Lo que hice fue campiar desde el Inspector de Objetos el tipo TBlob a TBlobGraphic, lo que dio muy buen resultado. No esperaba que la solucion fuera muy sencilla. con TBinary no he probado, porque queria hacer el intento con TBlobGraphic ya que esa idea sale de la sugerencia de TBinary.
Pregunta para Karal:
Veo tu sugerencia de utilizar los TMemo para almacenar graficos que me parece fantastica; Tengo que crear desde acces mi campo como un Memo? o Tengo que utilizar un campo ole desde acces y luego en el inspector de objetos modificar la propiedad Blob Type de ftBlob a ftFmtMemo?
Responder Con Cita
  #5  
Antiguo 01-06-2007
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Pues esta pregunta se me hizo viejita, no la avía visto, perdon.
Solo tienes que crear el campo tipo memo directo en access, no hay que hacer nada mas.
Perdon por el olvido.
Saludos
Responder Con Cita
  #6  
Antiguo 02-06-2007
Avatar de casacham
casacham casacham is offline
Miembro
 
Registrado: abr 2006
Ubicación: Cordoba->Argentina. Arboleas->Almeria->España
Posts: 184
Poder: 19
casacham Va por buen camino
Cool Gracias

Gracias Caral por responder, bueno, aunque el tiempo no es lo que importa, sino que realmente le pones ganas a todo esto. Si te interesa, aqui tengo un problema que me esta costando bastante resolverlo y como ya no le encontre salida genere este hilo http://www.clubdelphi.com/foros/showthread.php?t=44276 a ver si tu puedes decirme algo al respecto
Responder Con Cita
  #7  
Antiguo 05-09-2007
gabirojas gabirojas is offline
Miembro
 
Registrado: sep 2007
Posts: 27
Poder: 0
gabirojas Va por buen camino
Hola

Una consulta: como sería el código en Delphi para cargar la imagen en el campo memo? Uso un ADOTable para cargar los datos, y no encuentro la manera para cargar la imagen. Desde ya muchas gracias.
Responder Con Cita
  #8  
Antiguo 05-09-2007
gabirojas gabirojas is offline
Miembro
 
Registrado: sep 2007
Posts: 27
Poder: 0
gabirojas Va por buen camino
tblobgrafic

Hola Casacham. Como cambiaste el tipo tblob a tblobgraphic, ya que tengo el mismo problema al cargar un jpg. Muchas gracias por su tiempo.
Responder Con Cita
  #9  
Antiguo 05-09-2007
gabirojas gabirojas is offline
Miembro
 
Registrado: sep 2007
Posts: 27
Poder: 0
gabirojas Va por buen camino
stream error

////////nuevo hilo/////////

Última edición por gabirojas fecha: 06-09-2007 a las 19:14:00.
Responder Con Cita
  #10  
Antiguo 08-09-2007
Avatar de casacham
casacham casacham is offline
Miembro
 
Registrado: abr 2006
Ubicación: Cordoba->Argentina. Arboleas->Almeria->España
Posts: 184
Poder: 19
casacham Va por buen camino
Cool

Rta para gabirojas:
Lo hice en el inspector de objetos cuando tenia delphi 6. En delphi 7 no se puede. He probado utilizar un campo tipo Memo para almacenar fotos. Pero no me ha dado resultados, asi que sigo con el tipo Ole nomas. Insisto que el boletin pascal N° 11 es la mejor solucion que encontre para este problema. Aqui lo coloco su direccion

http://www.latiumsoftware.com/es/pascal/0011.php
Responder Con Cita
  #11  
Antiguo 09-09-2007
gabirojas gabirojas is offline
Miembro
 
Registrado: sep 2007
Posts: 27
Poder: 0
gabirojas Va por buen camino
Muchas gracias!!

Muy bueno, me sirvió mucho. Gracias por tu recomendacion. Espero serte util algun dia. Salu2.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Problemas y Soluciones de actualización de Query en TDBChart rosodo1 Gráficos 1 12-01-2007 00:59:48
Opciones personalizables para los usuarios de una aplicación Web: posibles soluciones dec MySQL 39 05-09-2006 12:50:51
Red Hat y HP impulsan las soluciones de almacenamiento corporativas Sasuke_Cub Noticias 0 28-09-2005 15:56:39
Soluciones Renzinio Tablas planas 1 23-12-2003 16:17:40


La franja horaria es GMT +2. Ahora son las 21:50:56.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi