Compartir a través de


Llamar a procedimientos almacenados (ODBC)

Cuando una instrucción SQL llama a un procedimiento almacenado mediante la cláusula de escape ODBC CALL, el controlador de Microsoft® SQL Server™ envía el procedimiento a SQL Server usando el mecanismo de llamada a un procedimiento almacenado remoto (RPC). Las solicitudes de RPC omiten gran parte del análisis de la instrucción y del procesamiento del parámetro en SQL Server, y es más rápido que usar la instrucción Transact-SQL EXECUTE.

Para obtener una aplicación de ejemplo que muestra esta característica, vea Procesar códigos de retorno y parámetros de salida (ODBC).

Para ejecutar un procedimiento como una RPC

  1. Cree una instrucción SQL que use la secuencia de escape ODBC CALL. La instrucción usa marcadores de parámetros para cada parámetro de entrada, de entrada/salida y de salida, así como para el valor devuelto por el procedimiento (si existe):

    {? = CALL procname (?,?)}
    
  2. Llame a SQLBindParameter para cada parámetro de entrada, de entrada/salida y de salida, así como para el valor devuelto por el procedimiento (si existe).

  3. Ejecute la instrucción con SQLExecDirect.

[!NOTA]

Si una aplicación envía un procedimiento con la sintaxis de Transact-SQL EXECUTE (en contraposición al flujo de escape ODBC CALL), el controlador ODBC de SQL Server pasa la llamada al procedimiento a SQL Server como una instrucción SQL en lugar de como una RPC. Además, los parámetros de salida no se devuelven si se usa la instrucción Transact-SQL EXECUTE.

Vea también

Conceptos

Procesar por lotes las llamadas a procedimientos almacenados

Ejecutar procedimientos almacenados

Llamar a un procedimiento almacenado

Procedimientos

Otros recursos

Temas de procedimientos de ejecución de procedimientos almacenados (ODBC)