Consulta Parametrizada

22/07/2005 - 12:45 por Eduardo | Informe spam
Hola:
Todos sabemos que cuando tenemos una consulta parametrizada que va a
interactuar con informacion proporcionada por el usuario debemos crear un
Comando con un CommandText sin asignar los valores de criterios a la cosulta
directamente sino mediante la funcion AddParameters para evitar fallas de
seguridad en el sistema como la insercion de Deletes.

Mi necesidad es la siguiente, como puedo obtener la consulta SQL final
generada por el Command ya con las variables sustituidas por los parametros.
Ejemplo (SQL SERVER): Si tuviera un " WHERE Nombre = @Name " y el usuario
me escribe en textbox de busqueda " Carlos' Delete * from Personas Where
Nombre <> ' "

Si yo sustituyera @Name directamente por lo que el usuario me pidio buscar
me lo buscaria y borraria casi todo, pero cuando el Command lo hace usando
AddParameters no le meten GOAL, como queda ese CommandText del Command para
que permita validar esas sentencias ?

GRACIAS
 

Leer las respuestas

#1 A.Poblacion
22/07/2005 - 19:02 | Informe spam
"Eduardo" wrote in message
news:
[...] como puedo obtener la consulta SQL final
generada por el Command ya con las variables sustituidas por los


parametros.

Utiliza el Profiler que viene con las herramientas de administración de
Sql Server. Te permite examinar todas las sentencias que le llegan al
servidor. En la versión en español, si no recuerdo mal, han traducido
"Profiler" como "Analizador". No hay que confundirlo con el "Analizador de
consultas", que es otra herramienta distinta.

[...] el usuario
me escribe en textbox de busqueda " Carlos' Delete * from Personas Where
Nombre <> ' "
[...] como queda ese CommandText del Command para
que permita validar esas sentencias ?



Lo que hace es generar una sentencia que tiene duplicadas las comillas
simples (cambia ' por ''), con lo que el servidor la interpreta como una
única comilla dentro del literal, en lugar de cerrar la comilla que abre el
literal.

Preguntas similares