Usar un procedimiento almacenado sin parámetros
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 JDBC de Microsoft SQL Server 2005 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 de SQL call
. La sintaxis de la secuencia de escape call
sin parámetros es la siguiente:
{call procedure-name}
Nota
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 los diez primeros contactos 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();
}
}