Índice

Ejecutar procedimientos y funciones

El EXECUTEmétodo execute, a veces abreviado execcomo exec, permite solicitar la ejecución de procedimientos almacenados. Se trata del uso más acertado de este comando. Sin embargo el método execute acepta como argumento una cadena de caracteres y la ejecuta sobre el motor de base de datos. Esta funcionalidad permite evitar un problema que a veces aparece al diseñar scripts Transact SQL, procedimientos o funciones, que es cómo construir de manera dinámica una consulta. Es sencillo dar valor a los diferentes argumentos de la consulta. Este no es el caso cuando se construye la consulta en función del valor o la presencia de algunos argumentos. El método EXECUTE permite construir una cadena de caracteres en formato de cadena de caracteres y después solicitar la ejecución de la consulta que se genera de esa manera. Por el contrario, esta funcionalidad tiene el inconveniente de facilitar los ataques mediante inyección de código SQL. Para evitar este tipo de problemas, es necesario que el desarrollador no ejecute una consulta o una fracción de consulta directamente introducida por el usuario sin que haya pasado los controles necesarios para asegurar que este código no contiene ningún ataque SQL.

Sintaxis

Execute ’cadenaCaracteres   
Execute nombreProcedimiento [[@nombreArgumento=]valor, ...]

Ejemplo

images/04ec51.png

La instrucción execute también permite presentar correctamente los valores devueltos por un procedimiento ...