Estoy utilizando SQL Server 2008 Enterprise. Estoy aprendiendo el parámetro OUTPUT del procedimiento almacenado de SQL Server. Por ejemplo, el procedimiento almacenado sp_add_jobschedule tiene un parámetro OUTPUT llamado schedule_id.Problema de parámetro de salida de SQL Server
http://msdn.microsoft.com/en-us/library/ms366342.aspx
Mi confusión es, se ve como parámetro OUTPUT se podría proporcionar un valor de entrada y devuelve un valor, parece que tiene comportamientos tanto de los parámetros de entrada y salida? ¿Está permitido no proporcionar ningún valor INPUT para el parámetro OUTPUT (para que se vea como un comportamiento de parámetro de salida puro)?
Gracias Marc, "La confusión se justifica en un grado - y otros RDBMS, como Oracle hacen tiene parámetros de procedimiento almacenados "- esta es la razón por la que estoy confundido. Estoy migrando de DB2 a SQL Server. Muchos conceptos son diferentes. :-( – George2
Otra pregunta, podríamos hacer el parámetro OUTPUT como un parámetro opcional, es decir, no podríamos proporcionar su valor de entrada, y simplemente usarlo como salida? – George2
Sí, por supuesto, podría proporcionar en valor INPUT o dejarlo vacío - Si no lo usa dentro de su procedimiento almacenado, no tiene sentido lo que pase. Depende de usted y del código que escriba en su procedimiento, independientemente de que usted siquiera vea el valor pasado. La cláusula "OUTPUT" solo significa que el procedimiento almacenado tiene la capacidad de DEVOLVER un valor en este parámetro, eso es todo. –