![]() |
![]() |
![]() |
![]() |
![]() |
FTP | ![]() |
![]() |
CCD | ![]() |
![]() |
Buscar | ![]() |
![]() |
Trucos | ![]() |
![]() |
Trabajo | ![]() |
![]() |
Foros | ![]() |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
No puedo coger la información de un campo BLOB
Hola, he buscado post anteriores pero ninguno me ha ayudado en lo que necesito. Uso Delphi5 y MySQL, y quiero cargar registros de la base de datos que contienen 3 campos: date, smallint, blob. El blob tiene texto, con formato supongo pq tiene marcas de parrafo.
En la select si selecciono solo el date y el smallint me coge bien los registros pero si hago un select * no me coge ninguno, el recordcount me devuelve -1. Este es el código que uso: procedure TFGenScripts.btValnotasClick(Sender: TObject); var i:integer; fecha, blob: string; begin script.Clear; label2.caption :=''; primera:= true; SQLQuery.ClearSQL; SQLQuery.SQL.Add('select * from valnotas order by FECHA_NT asc,EST_NT asc'); SQLQuery.ExecSQL; if SQLQuery.RecordCount > 0 then begin SQLQuery.Dataset.First; while not SQLQuery.Dataset.Eof do begin // el código de aquí no es relevante, simplemente trato los registros. // en principio me interesa poder coger el blob de la base de datos, // luego el procesarlo será otro cantar. end; end; label2.caption :='Proceso finalizado'; end; Gracias de antemano por las respuestas, un saludo |
#2
|
||||
|
||||
Hola Fonx, Prueba :
RecordCount no es funcional en este tipo de base de datos. Si quieres asegurarte que tienes contenido en ese Query, puede hacerlo relalizando previamente un Select Count(*) ..... where xxx que te devolverá el número de registros que cumplen la condición.
__________________
Un poco de tu generosidad puede salvar la vida a un niño. ASÍ DE SENCILLO |
#3
|
|||
|
|||
Gracias Ardilla pero no es el problema. La conexión ya esta abierta, y si hago esto:
'select FECHA_NT ,EST_NT from valnotas order by FECHA_NT ,EST_NT' me coge todos los registros que quiero, pero si hago el select * no me coge ninguno, por lo que el problema lo tengo con el tipo de dato BLOB ![]() |
#4
|
||||
|
||||
Lo siento fonx, no acabo de comprender esto:
Quieres decir que esto SI funciona:
Y que esto otro NO funciona:
Si es así, no veo cual puede ser el problema....
__________________
Un poco de tu generosidad puede salvar la vida a un niño. ASÍ DE SENCILLO |
#5
|
|||
|
|||
Así es, con el select *, cogiendo el date, el smallint y el blob no funciona
![]() Puede que sea porque el SQLQuery es una instancia de una clase (TIABDatos) que igual no es una clase estandar del delphi5 sino que ha sido programada por alquien y puede que por eso choca con el tipo blob. |
#6
|
|||
|
|||
bueno, di con ello, así que no hago perder más el tiempo a nadie
![]() El tema es que el recordcount no funciona bien, por lo que lo quité y me quedo solo con while not SQLQuery.Dataset.Eof do begin .... end Como comenté antes, estoy utilizando una librería para el acceso a datos que hizo un programador de donde estoy ahora, quizás en esa parte del recordcount hay algún tipo de bug, porque me devolvía -1 y sin embargo si hay información en el dataset. Gracias por todo y un saludo ![]() |
![]() |
|
|
![]() |
||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Campo Blob | IVAND | SQL | 4 | 09-01-2012 11:57:45 |
Como puedo mostrar información (Urgente) | JavierO | Tablas planas | 1 | 20-07-2005 20:40:19 |
Error en SELECT al coger un Campo (Veces Leido) | DarkByte | SQL | 5 | 13-09-2004 00:20:22 |
campo blob | acertij022 | Conexión con bases de datos | 1 | 19-08-2004 00:10:32 |
![]() |
|