Utilizzo di una stored procedure senza parametri
Il tipo più semplice di stored procedure di SQL Server che è possibile chiamare è quello che non contiene parametri e restituisce un solo set di risultati. Nel driver JDBC per Microsoft SQL Server 2005 è disponibile la classe SQLServerStatement, che è possibile utilizzare per chiamare questo tipo di stored procedure ed elaborare i dati restituiti.
Quando si utilizza il driver JDBC per chiamare una stored procedure senza parametri, è necessario utilizzare la sequenza di escape SQL call
. La sintassi della sequenza di escape call
senza parametri è la seguente:
{call procedure-name}
Nota
Per ulteriori informazioni sulle sequenze di escape SQL, vedere Utilizzo delle sequenze di escape SQL.
Come esempio, viene creata la seguente stored procedure nel database di esempio AdventureWorks di SQL Server 2005:
CREATE PROCEDURE GetContactFormalNames
AS
BEGIN
SELECT TOP 10 Title + ' ' + FirstName + ' ' + LastName AS FormalName
FROM Person.Contact
END
Questa stored procedure restituisce un solo set di risultati contenente una colonna di dati che corrispondono a una combinazione di titolo, nome e cognome dei primi dieci contatti presenti nella tabella Person.Contact.
Nell'esempio seguente viene passata alla funzione una connessione aperta al database di esempio AdventureWorks e viene utilizzato il metodo executeQuery per chiamare la stored procedure GetContactFormalNames:
public static void executeSprocNoParams(Connection con) {
try {
Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery("{call dbo.GetContactFormalNames}");
while (rs.next()) {
System.out.println(rs.getString("FormalName"));
}
rs.close();
stmt.close();
}
catch (Exception e) {
e.printStackTrace();
}
}