Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Conexión con bases de datos (https://www.clubdelphi.com/foros/forumdisplay.php?f=2)
-   -   Tipo campo para guardar texto rich (https://www.clubdelphi.com/foros/showthread.php?t=87721)

tarco35 17-02-2015 12:01:53

Tipo campo para guardar texto rich
 
Hola, tengo que guardar un texto rich, con formato, en una tabla paradox. He usado un campo Formated Memo, pero el caso es que cuando chequeo la tabla con la utilidad "DataBase Explorer32" me dice: Invalid Formatted Memo header
Y si intento repararla me borra el contenido de ese campo.
Como tendria que definir el campo en la tabla para que no me de problemas??
Gracias.

Casimiro Notevi 17-02-2015 12:27:44

¿No hay campos BLOB en paradox?

tarco35 17-02-2015 13:32:54

si, tanto Memo como Formated Memo son BLOB

Casimiro Notevi 17-02-2015 14:06:55

¿Entonces será un problema de la forma en que guardas el dato?

tarco35 17-02-2015 14:18:59

pues no se... lo hago asi:

Código Delphi [-]
    S := TMemoryStream.Create;
    try
      Editor.Lines.SaveToStream(S);
      S.Position := 0;
      ModuloDatos.TablaProtocolos.Edit;
      ModuloDatos.TablaProtocolosProtocolo.LoadFromStream(S);
      ModuloDatos.TablaProtocolos.Post;
    finally
      S.Free;
    end;

Casimiro Notevi 17-02-2015 17:40:50

¿Pero puedes volver a extraer los datos guardados?

roman 17-02-2015 18:48:25

Refuerzo la pregunta de Casimiro.

Hasta donde creo recordar, un campo Formatted Memo de Paradox tiene su propia estructura y aunque te sirva para guardar cualquier dato binario, una utilidad como el DataBase Explorer estará tratando de encontrar dicha estructura precisa y marcará un error si no la encuentra. Pero eso no significa que no puedas recuperar la información con los Streams. En todo caso, puedes intentar usar Binary o Bytes (no recuerdo) en lugar de Formatted Memo.

// Saludos

tarco35 17-02-2015 20:46:28

Pues si que puedo recuperar, modifcar y grabar datos sin problema.

Al final he cambiado el tipo de campo de Formated Memo a Binary (ambos de tipo BLOB) y aparte de seguir funcionando correctamente al chequear la tabla no me salta el error que comentaba anteriormente.

Gracias por su colaboracion.

Saludos.


La franja horaria es GMT +2. Ahora son las 13:50:58.

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