Empleo de instrucciones con procedimientos almacenados
Un procedimiento almacenado es un procedimiento de base de datos, similar a un procedimiento en otros lenguajes de programación, que está contenido en la misma base de datos. En SQL Server se pueden crear procedimientos almacenados mediante Transact-SQL o mediante Common Language Runtime (CLR) y uno de los lenguajes de programación de Visual Studio, como Visual Basic o C#. Por lo general, los procedimientos almacenados de SQL Server pueden hacer lo siguiente:
Aceptar parámetros de entrada y devolver varios valores en forma de parámetros de salida al lote o al procedimiento que realiza la llamada.
Contener instrucciones de programación que realicen operaciones en la base de datos, incluidas las llamadas a otros procedimientos.
Devolver un valor de estado a un lote o a un procedimiento que realice una llamada para indicar si la operación se ha realizado correctamente o se han producido errores, y el motivo de estos.
Nota
Para obtener más información sobre los procedimientos almacenados de SQL Server, vea "Procedimientos almacenados" en Libros en pantalla de SQL Server.
Para trabajar con datos de una base de datos de SQL Server mediante un procedimiento almacenado, Microsoft JDBC Driver para SQL Server proporciona las clases SQLServerStatement, SQLServerPreparedStatement y SQLServerCallableStatement. La clase usada depende de si el procedimiento almacenado requiere los parámetros IN (entrada) u OUT (salida). Si el procedimiento almacenado no requiere parámetros IN ni OUT, puede usar la clase SQLServerStatement; si se llama al procedimiento almacenado varias veces o este requiere solo parámetros IN, puede usar la clase SQLServerPreparedStatement. Si el procedimiento almacenado requiere los parámetros IN y OUT, debe usar la clase SQLServerCallableStatement. Solo si el procedimiento almacenado requiere parámetros OUT, necesita usar la clase SQLServerCallableStatement.
Nota
Los procedimientos almacenados también pueden devolver recuentos de actualización y varios conjuntos de resultados. Para obtener más información, consulte Empleo de un procedimiento almacenado con un recuento de actualización y Empleo de varios conjuntos de resultados.
Si usa el controlador JDBC para llamar a un procedimiento almacenado con parámetros, debe usar la secuencia de escape de SQL call
junto con el método prepareCall de la clase SQLServerConnection. La sintaxis completa de la secuencia de escape call
es la siguiente:
{[?=]call procedure-name[([parameter][,[parameter]]...)]}
Nota
Para obtener más información sobre call
y otras secuencias de escape de SQL, consulte Usar secuencias de escape de SQL.
En los temas de esta sección se describen las formas en las que puede llamar a los procedimientos almacenados de SQL Server con el controlador JDBC y la secuencia de escape de SQL call
.
En esta sección
Tema | Descripción |
---|---|
Empleo de un procedimiento almacenado sin parámetros | Describe cómo usar el controlador JDBC para ejecutar procedimientos almacenados que no contengan parámetros de entrada o de salida. |
Empleo de un procedimiento almacenado con parámetros de entrada | Describe cómo usar el controlador JDBC para ejecutar procedimientos almacenados que contengan parámetros de entrada. |
Empleo de un procedimiento almacenado con parámetros de salida | Describe cómo usar el controlador JDBC para ejecutar procedimientos almacenados que contengan parámetros de salida. |
Empleo de un procedimiento almacenado con un estado de retorno | Describe cómo usar el controlador JDBC para ejecutar procedimientos almacenados que contengan valores de estado de devolución. |
Empleo de un procedimiento almacenado con un recuento de actualización | Describe cómo usar el controlador JDBC para ejecutar procedimientos almacenados que devuelvan recuentos de actualizaciones. |