Usar 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 por ejemplo Visual Basic o C#. Por lo general, los procedimientos almacenados de SQL Server pueden realizar lo siguiente:

  • Aceptar parámetros de entrada y devolver múltiples valores en forma de parámetros de salida al procedimiento de llamada o el lote.
  • Contener instrucciones de programación que realicen operaciones en la base de datos, incluyendo llamadas a otros procedimientos.
  • Devolver un valor de estado a un procedimiento de llamada o lote para indicar la correcta realización o el error (y la razón del error).

Nota

Para obtener más información sobre los procedimientos almacenados de SQL Server, consulte "Procedimientos almacenados" en los Libros en pantalla de SQL Server.

Para trabajar con los datos de una base de datos de SQL Server con un procedimiento almacenado, el controlador JDBC de Microsoft 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 ningún parámetro IN u OUT, puede usar la clase SQLServerStatement; si se llama al procedimiento almacenado varias veces o el procedimiento requiere solo parámetros IN, puede usar la clase SQLServerPreparedStatement. Si el procedimiento almacenado requiere 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 actualizaciones y múltiples conjuntos de resultados. Para obtener más información, consulte Usar un procedimiento almacenado con un recuento de actualizaciones y Usar múltiples 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 SQL.

Los temas de esta sección 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

Usar 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.

Usar 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.

Usar 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.

Usar un procedimiento almacenado con un estado de devolución

Describe cómo usar el controlador JDBC para ejecutar procedimientos almacenados que contengan valores de estado de devolución.

Usar un procedimiento almacenado con un recuento de actualizaciones

Describe cómo usar el controlador JDBC para ejecutar procedimientos almacenados que devuelvan recuentos de actualizaciones.

Vea también

Otros recursos

Usar instrucciones con el controlador JDBC