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 , no se, preguntaré a algún compañero de aquí del trabajo a ver si alguien sabe algo...
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 |
#7
|
|||
|
|||
Hola:
Bueno es que no es problema de lo que el programador anterior hizo, yo te comento que hace tiempo use la combinación BDE - Oracle y ultimamente BDE - DB2 y fue los mismo, lo que hago regularmente es:
Y con eso recupero el número de registros que trae el Set de datos, solo que hacerlo asi trae una consecuencia grave, si el número de registros es grande, llamar al Last es estropear el programa. Por último te comento que he trabajado con componentes DBExpress para las mismas bases de datos y funciona como originalmente lo tienes Saludos
__________________
Ernesto R. |
|
|
Temas Similares | ||||
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 |
|