Especificar un nombre de parámetro
Cada parámetro de un procedimiento almacenado debe definirse con un nombre único. Los nombres de los procedimientos almacenados deben empezar por un solo carácter @, como una variable estándar de Transact-SQL, y deben seguir las reglas definidas para los identificadores de objetos. El nombre del parámetro se puede utilizar en el procedimiento almacenado para obtener y cambiar el valor del parámetro.
Es posible pasar valores a los procedimientos almacenados de dos maneras: asignando un nombre explícitamente a los parámetros y asignando el valor apropiado, o bien suministrando los valores del parámetro especificados en la instrucción CREATE PROCEDURE sin asignarles un nombre. Por ejemplo, si el procedimiento almacenado my_proc espera tres parámetros llamados @first, @second y @third, los valores pasados al procedimiento almacenado pueden asignarse a los nombres de los parámetros; por ejemplo:
EXECUTE my_proc @second = 2, @first = 1, @third = 3;
O bien por su posición, sin asignarles ningún nombre:
EXECUTE my_proc 1, 2, 3;
Si se asigna un nombre a los parámetros cuando se ejecuta el procedimiento almacenado, es posible especificarlos en cualquier orden. Si no se asigna ningún nombre a los parámetros, deben especificarse en el mismo orden (de izquierda a derecha) en el que están definidos en el procedimiento almacenado. Además, todos los parámetros que precedan a un parámetro determinado deberán especificarse aunque sean opcionales y tengan valores predeterminados. Por ejemplo, si todos los parámetros de my_proc son opcionales, se podría ejecutar my_proc mediante la especificación de los valores correspondientes a los dos primeros parámetros, pero no a los del segundo y tercer parámetros solamente. Esto es necesario, ya que en caso contrario, Microsoft SQL Server no puede identificar los parámetros que se especifican.
Vea también