Página 1 de 1

Para Jose F. Gimenez

Publicado: Mié Dic 03, 2008 5:05 am
por Martin Del Angel
Como es sabido la comilla sirve para delimitar las Datos String en los
motores SQL.
SQLiteRecords tiene bien implementado el manejo de las comillas simples
' y la diagonal cuando el usuario las teclea en campos tipo
caracter, la funcion StrSql es la encargada de eso.
SQLiteRecords.prg
STATIC FUNCTION ValToStr( x )
SWITCH ValType( x )
CASE 'C'
x := "'" + StrSql( x ) + "'"
EXIT
La Funcion ValToStr() de MySQLRecords.prg carece de la funcion StrSql o
una similar, lo cual deja un hueco para hacer que se produzca un error
como este cuando el usuario teclea una comilla como parte de la inf.
TMYSQLRECORDS:REPLACE(502)
Error MySQL/-1 You have an error in your SQL syntax; check the manual
that corresponds to your MySQL server version for the right syntax to
use near '25' WHERE tipostarifa.TARIFA_ID= 2' at line 1:
TMYSQLRECORDS:REPLACE
Arguments: ( [ 1] = Type: C Val: UPDATE tipostarifa SET
TARIFA='PROMULGATED 25,50',25' WHERE tipostarifa.TARIFA_ID= 2)
la comilla esta despues del 50' la cual es parte de la inf. tecleada por
el usuario
Que gran hueco!
codigo de MySQLRecords.prg
STATIC FUNCTION ValToStr( x )
SWITCH ValType( x )
CASE 'C'
x := "'" + x + "'"
EXIT
Lo cual no ocurre con SQLiteRecords.prg
Perdón por publicar el codigo , pero quize ser explicito
P.D. Inf. para el foro
http://dev.mysql.com/doc/refman/5.0/es/ ... yntax.html
Saludos....
Martin Del Angel
Dymsa Sistemas

Para Jose F. Gimenez

Publicado: Jue Dic 04, 2008 10:57 am
por jfgimenez
Martín,
perdona por el retraso en contestarte. Ya lo hemos corregimos en Xailer.
Mientras tanto puedes utilizar esta misma modificación en tu programa.
--
Un saludo,
José F. Giménez
http://www.xailer.com
http://www.xailer.info

Para Jose F. Gimenez

Publicado: Vie Dic 05, 2008 7:24 pm
por Martin Del Angel
Jose F. Gimenez wrote:
> Martí­n,
>
> perdona por el retraso en contestarte. Ya lo hemos corregimos en Xailer.
> Mientras tanto puedes utilizar esta misma modificación en tu programa.
>
Gracias
Pero la función StrSql es propia de la Libreria de Xailer , Xharbour o ?
donde la encuentro?
Gracias.
Perdon por contestar , pero estuve unos dias ausente.
Saludos...