FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
||||
|
||||
Concatenación de campos BLOB
Buenas, estoy trabajando con Firebird 3.0, Delphi XE5, FireDac.
Necesito concatenar dos campos BLOB, lo que hago es lo siguiente:
Pero cuando ejecuto, solamente me devuelve lo que está en a.titulo_aviso_admin, sin concatenación con la segunda parte. Aclaro que, lo que hay en los campos está en formato RTF, pero al menos debería mostrarme que los junta, o un error. Sin embargo, lo hace pero no concatena. Bueno, espero haber sido claro. Ojalá puedan ayudarme. Gracias. Santiago.
__________________
Uno es responsable de lo que hace y de lo que omite hacer. |
#2
|
||||
|
||||
Hola,
aunque no tengo ninguna certeza, supongo que los tiros van por la concatenación. Al concatenar, el segundo blob tiene la cadena de comienzo de fichero. Supongo que por eso se te china. Quítale un cacho de x caracteres al principio del segundo blob, concatena y prueba. Saludos
__________________
Cuando los grillos cantan, es que es de noche - viejo proverbio chino - |
#3
|
||||
|
||||
Si los campos son blob binario (subtipo 0) no podrás, tendrás que extraerlos.
Pero si los campos son blob de texto (subtipo 1) sí que podrás concatenarlos normalmente con || |
#4
|
||||
|
||||
Hola.
Tratándose de la versión 3 de Firebird no me aventuro a asegurarlo por que desconozco sus cambios, pero la versión 2.5 se comporta de igual modo. Leyendo en The Firebird Book de Helen Borrie encontré : Cita:
Intentando otro camino, no sería mayor problema hacerlo desde Delphi mediante Streams si no se tratase de contenido con formato RTF. Pero, lamentablemente ese formato posee cabecera, finalizacion, etc. y no se puede concatenar como si se tratase de texto o contenido binario. Finalmente, como te comenta Antonio usando SUB_TYPE 1 sí que Firebird lo puede hacer sin problemas, pero estarías trabajando con texto sin formato. Saludos
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... |
#5
|
||||
|
||||
Entiendo.
Tienen razón, no hay manera de concatenar si son RTF. Hay que extraerlos y hacerlo con Stream's. Ya estoy en eso. Pongo a consideración unos pequeños procedimientos que hacen eso. Espero sirva. Los hice en DelphiXE5.
Muchas gracias.
__________________
Uno es responsable de lo que hace y de lo que omite hacer. |
#6
|
||||
|
||||
Para que se entienda, esto los pone a todos en Texto Plano. Luego, podemos hacer con ellos lo que nos plazca.
Santiago.
__________________
Uno es responsable de lo que hace y de lo que omite hacer. |
#7
|
||||
|
||||
Hola.
Como comentaste que necesitabas concatenar dos campos Blob, te pongo una alternativa que prescinde del uso de TRichEdit para la conversión:
Ejemplo de uso:
Resultado: Saludos
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... |
#8
|
||||
|
||||
Uuuuuh. Me parece genial.
Lo voy a probar y veo como queda. Pero creo que es el camino. Gracias.
__________________
Uno es responsable de lo que hace y de lo que omite hacer. |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
TClienDataSet Problemas con Campos Blob y Campos Calculados | LEVV | Conexión con bases de datos | 2 | 11-05-2012 01:25:43 |
Campos Blob | L3st4t | Debates | 2 | 25-03-2011 21:55:26 |
Campos BLOB | TJose | Firebird e Interbase | 4 | 28-12-2006 18:48:20 |
Campos Blob | Huer | Varios | 1 | 11-06-2003 10:39:06 |
Campos Blob | Kafu | Firebird e Interbase | 2 | 08-05-2003 18:07:54 |
|