Ver la Versión Completa : guardar la RUTA de imagen en mysql
darkbits
31-03-2016, 23:47:32
Hola al club
mira que no puedo hacer un UPDATE la ruta de una imagen c:\sistema\image\logo.jpg
cuando ejecuto el SQL me guarda c:sistemaimagelogo.jpg
s:=SavePictureDialog1.FileName+'image\logo.jpg';
_DM.consulta1.SQL.Text:='update empresa set logo_empresa ='+(s)+' where id_empresa =1';
mi campo logo_empresa es varchar (500)
agradesco su ayuda
roman
01-04-2016, 00:07:30
Para mysql (como para muchos otros procesos) la diagonal \ es un caracter especial (de escape) y por tanto debes "escaparla" también anteponiendo otra diagonal. O sea, tu ruta debe ser así:
C:\\ruta\\a\\la\\imagen.jpg
LineComment Saludos
darkbits
01-04-2016, 00:16:13
Nada no funciono MYSQL no reconoce \ peor \\
roman
01-04-2016, 00:27:26
En cambio yo acabo de hacer la prueba y funciona tal como digo. Lo que puedo ver en tu código es que no estás entrecomillando el texto de la ruta. Tendrías que poner:
'update empresa set logo_empresa ="'+s+'" where id_empresa =1'
LineComment Saludos
roman
01-04-2016, 00:31:55
Por otro lado, el uso de parámetros suele evitar estos problemas. Por ejemplo, en MyDac pondría:
s:=SavePictureDialog1.FileName+'image\logo.jpg';
_DM.consulta1.SQL.Text:='update empresa set logo_empresa =:ruta where id_empresa =1';
_DM.consulta1.ParamByName('ruta').AsString := s;
_DM.consulta1.Execute;
y listo. Sin necesidad de entrecomillar ni escapar.
LineComment Saludos
darkbits
01-04-2016, 00:40:21
SOLUCIONADO
funciono la opción con parámetros se agradece...
vBulletin v3.6.8, Derechos ©2000-2024, Jelsoft Enterprises Ltd.