PDA

Ver la Versión Completa : como guardo el contenido den un memo en mi BD??


rodrigodeoz
25-09-2007, 19:48:18
por que cuando realizo la siguiente colsulta me guarda puros signos de interrogacion ejemplo si guardo hola me pone ??
Alguien que me ayude


with dm.qadulto do begin
close;
sql.Clear;
sql.add('update nino set motivo=:0');
SQL.Add('WHERE cve_cte=:cv');
parambyname('cv').Value:=cni;
parambyname('0').AsBlob:=mc.Text;
execsql;
end;

poliburro
25-09-2007, 19:58:50
es que lo estas guardando como si fuera un campo binario. como has definido el campo en tu base de datos?, de tipo blob o de tipo Text?

enecumene
25-09-2007, 20:00:54
poliburro se me adelanto, por favor nos puedes decir que base de datos usas?

Saludos.

rodrigodeoz
25-09-2007, 20:11:39
USO acces, ya he tratado de guardar con asMemo pero este metodo no me permite guaradar gran cantidad de texto, y me dijeron que usara el asBlob pero me guarda puros ????????????????, el campo es motivo y en la BD esta como tipo memo

Caral
25-09-2007, 20:20:46
Hola

with dm.qadulto do begin
close;
sql.Clear;
sql.add('update nino set motivo = :Q');
SQL.Add('WHERE cve_cte = :cv');
parambyname('cv').Value:= cni;
parambyname('Q').AsString:= mc.Text;
execsql;
end;
Si no el problema viene de Parameters.parambyname, access trabaja asi.
Solo opino.
Saludos

rodrigodeoz
25-09-2007, 20:25:09
tu comentario es correcto el unico problema con el metodo asString solo puedo enviar parametros de hasta 255 caracteres y yo necesito almacenar mas. pero gracias por el comentorio

Caral
25-09-2007, 20:29:13
Hola
Pues a mi me trabaja en un campo memo, con largas listas de muchos caracteres incluso fotos.
Pero bueno, debe ser algo mas.
Saludos

poliburro
25-09-2007, 20:48:58
tu comentario es correcto el unico problema con el metodo asString solo puedo enviar parametros de hasta 255 caracteres y yo necesito almacenar mas. pero gracias por el comentorio


En delphi, el tipo String en realidad hace referencia al WideString, donde una variable de este tipo puede almacenar más de un giga de información.

rodrigodeoz
25-09-2007, 20:53:50
ok. eso dato no lo sabia, pero = no me raliza el update me marcfa error: 'acces Violation' y ya no se que hacerle ya intente con asmemo, con asblob, asstring y nada, con el unico que me deja guardar gran cantidad de informacion es con el asBlob pero me lo guarda en binario creo por que me pones simbolos extraños en la BD y al momento de mostrarlo solo aparecen signos de interrogacion.:(

Caral
25-09-2007, 21:32:37
Hola
Como no me gusta equivocarme, prefiero probarlo.
Aqui esta un ejemplo, usando casi exactamente lo que haces, con sus parametros y demas.
He insertado muchos mas de 300 caracteres y funciona perfectamente, si lees mi primer post sabras mas.
Bueno, aqui esta.
Saludos

rodrigodeoz
25-09-2007, 22:00:45
de hecho tu ejemplo funciona muy bien, no se porq a mi no me quiere funcionar la consulta si es la misma, no se siu tendra algo que ver yo uso un ODBC, o que sea acces el que no permite al actualizacion pero bueno voy a atratar de checar haciendo todo desde 0 cero, muchas gracias por tu tiempo.

Caral
25-09-2007, 22:08:26
Hola
Pregunto:
por que access por odbc?
Por que no por ado?
Saludos

rodrigodeoz
26-09-2007, 17:26:03
Pues por q con el ADO tengo entendido que tienes que tener la BD en una carpeta especifica y no puesdes si tienes una conexion en red no se puede accesar a ella por medio del ADO