Uso delle istruzioni con le stored procedure

Scaricare il driver JDBC

Una stored procedure è una procedura del database, simile alle procedure di altri linguaggi di programmazione, contenuta all'interno dello stesso database. In SQL Server, le stored procedure possono essere create usando Transact-SQL o Common Language Runtime (CLR) e uno dei linguaggi di programmazione di Visual Studio, ad esempio Visual Basic o C#. In genere, le stored procedure di SQL Server consentono di eseguire le operazioni seguenti:

  • Accettare parametri di input e restituire più valori sotto forma di parametri di output alla procedura o al batch che esegue la chiamata.

  • Includere istruzioni di programmazione che eseguono le operazioni nel database, tra cui la chiamata di altre procedure.

  • Restituire un valore di stato a una procedura o a un batch che esegue la chiamata per indicare l'esito positivo o negativo (e il motivo dell'esito negativo).

Nota

Per ulteriori informazioni sulle stored procedure di SQL Server, vedere "Informazioni di base sulle stored procedure" in SQL Server Books Online.

Per gestire i dati in un database di SQL Server usando una stored procedure, il driver Microsoft JDBC per SQL Server fornisce le classi SQLServerStatement, SQLServerPreparedStatement e SQLServerCallableStatement. La classe che si utilizza dipende dal fatto che la stored procedure richieda parametri IN (input) o OUT (output). Se la stored procedure non richiede i parametri IN o OUT, è possibile usare la classe SQLServerStatement. Se la chiamata di stored procedure verrà eseguita più volte o vengono richiesti solo i parametri IN, è possibile usare la classe SQLServerPreparedStatement. Se la stored procedure richiede entrambi i parametri IN e OUT, è consigliabile usare la classe SQLServerCallableStatement. Solo quando la stored procedure richiede parametri OUT sarà necessario il sovraccarico derivante dall'uso della classe SQLServerCallableStatement.

Nota

Inoltre le stored procedure possono restituire conteggi di aggiornamento e più set di risultati. Per altre informazioni, vedere Utilizzo di una stored procedure con un conteggio di aggiornamento e Utilizzo di più insiemi di risultati.

Quando si usa il driver JDBC per chiamare una stored procedure con parametri, è necessario usare la sequenza di escape SQL call insieme al metodo prepareCall della classe SQLServerConnection. La sintassi completa della sequenza di escape call è la seguente:

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

Nota

Per altre informazioni su call e su altre sequenze di escape SQL, vedere Uso delle sequenze di escape SQL.

Negli argomenti di questa sezione vengono descritti i possibili modi per chiamare le stored procedure di SQL Server usando il driver JDBC e la sequenza di escape SQL call.

In questa sezione

Argomento Descrizione
Uso di una stored procedure senza parametri Viene descritto come utilizzare il driver JDBC per eseguire le stored procedure che non contengono parametri di input o di output.
Utilizzo di una stored procedure con parametri di input Viene descritto come utilizzare il driver JDBC per eseguire le stored procedure che contengono parametri di input.
Utilizzo di una stored procedure con parametri di output Viene descritto come utilizzare il driver JDBC per eseguire le stored procedure che contengono parametri di output.
Utilizzo di una stored procedure con codice di stato restituito Viene descritto come utilizzare il driver JDBC per eseguire le stored procedure che contengono valori di stato restituito.
Uso di una procedura memorizzata con un conteggio di aggiornamento Viene descritto come utilizzare il driver JDBC per eseguire le stored procedure che restituiscono conteggi di aggiornamento.