Empleo de un procedimiento almacenado sin parámetros
El tipo más sencillo de procedimiento almacenado de SQL Server al que puede llamar es aquel que no contiene parámetros y devuelve un solo conjunto de resultados. El controlador JDBC de Microsoft para SQL Server ofrece la clase SQLServerStatement, que puede usar para llamar a este tipo de procedimiento almacenado y procesar los datos que devuelve.
Si usa el controlador JDBC para llamar a un procedimiento almacenado sin parámetros, debe usar la secuencia de escape call
de SQL. La sintaxis de la secuencia de escape call
sin parámetros es la siguiente:
{call procedure-name}
Nota
Para obtener más información sobre las secuencias de escape de SQL, consulte Usar secuencias de escape de SQL.
Cree, a modo de ejemplo, el siguiente procedimiento almacenado en la base de datos de ejemplo AdventureWorks2022:
CREATE PROCEDURE GetContactFormalNames
AS
BEGIN
SELECT TOP 10 Title + ' ' + FirstName + ' ' + LastName AS FormalName
FROM Person.Contact
END
Este procedimiento almacenado devuelve un solo conjunto de resultados que contiene una columna de datos, compuesta por una combinación del título, el nombre y el apellido de las diez primeras consultas de la tabla Person.Contact.
En el siguiente ejemplo, se pasa a la función una conexión abierta a la base de datos de ejemplo AdventureWorks2022 y se usa el método executeQuery para llamar al procedimiento almacenado GetContactFormalNames.
public static void executeSprocNoParams(Connection con) throws SQLException {
try(Statement stmt = con.createStatement();) {
ResultSet rs = stmt.executeQuery("{call dbo.GetContactFormalNames}");
while (rs.next()) {
System.out.println(rs.getString("FormalName"));
}
}
}