Como usar instruções com procedimentos armazenados

Baixar driver JDBC

Um procedimento armazenado é um procedimento de banco de dados, semelhante a um procedimento em outras linguagens de programação e que está contido no próprio banco de dados. No SQL Server, os procedimentos armazenados podem ser criados com o uso de Transact-SQL ou CLR (Common Language Runtime) e uma das linguagens de programação do Visual Studio, como Visual Basic ou C#. Em geral, os procedimentos armazenados do SQL Server podem fazer o seguinte:

  • Aceitar parâmetros de entrada e retornar vários valores no formulário de parâmetros de saída para o procedimento de chamada ou lote.

  • Conter instruções de programação que executam operações no banco de dados, inclusive chamar outros procedimentos.

  • Retornar um valor de status a um procedimento de chamada ou lote para indicar êxito ou falha (e o motivo da falha).

Observação

Para obter mais informações sobre os procedimentos armazenados do SQL Server, veja "Compreendendo os procedimentos armazenados" nos Manuais Online do SQL Server.

Para trabalhar com os dados em um banco de dados do SQL Server usando um procedimento armazenado, o Microsoft JDBC Driver para SQL Server fornece as classes SQLServerStatement, SQLServerPreparedStatement e SQLServerCallableStatement. A classe que você vai usar depende da necessidade do parâmetro IN (entrada) ou OUT (saída) para o procedimento armazenado. Se o procedimento armazenado não exigir o parâmetro IN ou OUT, você poderá usar a classe SQLServerStatement; se o procedimento armazenado será chamado várias vezes, ou se ele exigir apenas parâmetros IN, você poderá usar a classe SQLServerPreparedStatement. Se o procedimento armazenado exigir os parâmetros IN e OUT, você deverá usar a classe SQLServerCallableStatement. Somente quando o procedimento armazenado requer parâmetros OUT você precisará da sobrecarga de usar a classe SQLServerCallableStatement.

Observação

Os procedimentos armazenados também podem retornar contagens de atualização e vários conjuntos de resultados. Para obter mais informações, confira Como usar um procedimento armazenado com uma contagem de atualização e Como usar vários conjuntos de resultados.

Ao usar o driver JDBC para chamar um procedimento armazenado com parâmetros, você deve usar a sequência de escape do SQL call junto com o método prepareCall da classe SQLServerConnection. A sintaxe completa da sequência de escape call é a seguinte:

{[?=]call procedure-name[([parameter][,[parameter]]...)]}

Observação

Para obter mais informações sobre a call e outras sequência de escape do SQL, confira Como usar sequências de escape do SQL.

Os tópicos desta seção descrevem as maneiras de chamar procedimentos armazenados do SQL Server usando o driver JDBC e a sequência de escape call do SQL.

Nesta seção

Tópico Descrição
Como usar um procedimento armazenado sem parâmetros Descreve como usar o driver JDBC para executar procedimentos armazenados que não contêm parâmetros de entrada ou saída.
Como usar um procedimento armazenado com parâmetros de entrada Descreve como usar o driver JDBC para executar procedimentos armazenados que contêm parâmetros de entrada.
Como usar um procedimento armazenado com parâmetros de saída Descreve como usar o driver JDBC para executar procedimentos armazenados que contêm parâmetros de saída.
Como usar um procedimento armazenado com um status de retorno Descreve como usar o driver JDBC para executar procedimentos armazenados que contêm valores de status de retorno.
Como usar um procedimento armazenado com uma contagem de atualização Descreve como usar o driver JDBC para executar procedimentos armazenados que retornam contagens de atualização.

Confira também

Como usar instruções com o JDBC Driver