Compartilhar via


Chamar procedimentos armazenados (ODBC)

Quando uma instrução SQL chama um procedimento armazenado usando a cláusula de escape ODBC CALL, o driver do Microsoft SQL Server envia o procedimento para SQL Server usando o mecanismo de RPC (chamada de procedimento armazenado remoto). As solicitações de RPC ignoram grande parte da análise de instruções e do processamento de parâmetros no SQL Server e são mais rápidas do que a instrução EXECUTE do Transact-SQL.

Para obter um aplicativo de exemplo que demonstre esse recurso, consulte Código de retorno de processo e parâmetros de saída (ODBC).

Para executar um procedimento como um RPC

  1. Crie uma instrução SQL que use a sequência de escape ODBC CALL. A instrução usa marcadores de parâmetro para cada parâmetro de entrada, entrada/saída e saída, e para o valor de retorno do procedimento (se houver):

    {? = CALL procname (?,?)}  
    
  2. Chame SQLBindParameter para cada entrada, entrada/saída e parâmetro de saída e obter o valor de retorno de procedimento (se houver algum).

  3. Execute a instrução com SQLExecDirect.

Observação

Se um aplicativo enviar um procedimento usando a sintaxe EXECUTE Transact-SQL (em oposição à sequência de escape ODBC CALL), o driver ODBC SQL Server passará a chamada de procedimento para o SQL Server como uma instrução SQL, em vez de como um RPC. Além disso, os parâmetros de saída não serão retornados se a instrução EXECUTE Transact-SQL for usada.

Consulte Também

Tópicos de instruções sobre execução de procedimentos armazenados (ODBC)
Processando em lote as chamadas de procedimento armazenado
Executando procedimentos armazenados
Chamando um procedimento armazenado
Procedimentos