En otros foros lei que la inyección sql aún es posible cuando se reemplaza la comilla simple por dos comillas simples, por lo que decidí reemplazarla por comillas dobles, pero no sé que tan seguro sea esto.
Hice una función que reemplaza los caracteres antes señalados y quisiera que un experto me pudiera decir qué tan segura es para evitar el ataque sql.
Código:
Se agradecen las sugerencias. ALTER FUNCTION filtraTexto( @cadena varchar(MAX)) RETURNS varchar(MAX) AS BEGIN -- normaliza la cadena select @cadena = UPPER( LTRIM( RTRIM (@cadena))) -- reemplaza comilla simple por comilla doble select @cadena = REPLACE(@cadena,'''',' " ') -- quita comentarios de una linea select @cadena = REPLACE(@cadena,'--','**') -- quita comentarios iniciales select @cadena = REPLACE(@cadena,'/*','**') -- quita comentarios finales select @cadena = REPLACE(@cadena,'*/','**') -- quita la arroba ( evita posibles usos de instrucciones DELCARE @variable ) select @cadena = REPLACE(@cadena,'@','(@)') -- reemplaza punto y coma por coma select @cadena = REPLACE(@cadena,';',',') RETURN @cadena END ;