Procesar resultados de procedimientos almacenados
Los procedimientos almacenados de SQL Server tienen cuatro mecanismos que se utilizan para devolver datos:
Cada instrucción SELECT del procedimiento genera un conjunto de resultados.
El procedimiento puede devolver datos mediante parámetros de salida.
Un parámetro de salida del cursor puede devolver un cursor de servidor Transact-SQL.
El procedimiento puede tener un código de retorno de tipo entero.
Las aplicaciones deben ser capaces de administrar todos estos resultados de los procedimientos almacenados. La instrucción CALL o EXECUTE debería incluir los marcadores de parámetros para el código de retorno y los parámetros de salida. Utilice SQLBindParameter para enlazarlos todos como parámetros de salida y el controlador ODBC de SQL Server Native Client transferirá los valores de salida a las variables enlazadas. Los parámetros de salida y los códigos de retorno son los últimos elementos que devuelve SQL Server al cliente; no son devueltos a la aplicación hasta que SQLMoreResults devuelve SQL_NO_DATA.
ODBC no permite enlazar parámetros de cursor Transact-SQL. Puesto que todos los parámetros de salida se deben enlazar antes de ejecutar un procedimiento, las aplicaciones ODBC no pueden llamar a ningún procedimiento almacenado Transact-SQL que contenga un parámetro de cursor de salida.