El tipo más sencillo de procedimiento almacenado de SQL Server al que puede llamar es el que no contiene parámetros y devuelve un solo conjunto de resultados. El Controlador Microsoft JDBC para SQL Server proporciona 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 de SQL call . La sintaxis de la secuencia de escape call sin parámetros es la siguiente:
{call procedure-name}
Para obtener más información acerca de las secuencias de escape de SQL, consulte Usar secuencias de escape SQL.
Cree, a modo de ejemplo, el siguiente procedimiento almacenado en la base de datos de ejemplo AdventureWorks de SQL Server 2005:
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 AdventureWorks y se usa el método executeQuery para llamar al procedimiento almacenado 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(); } }