Tutorial de procedimientos almacenados en servidores SQL Server

Escrito por divya gupta | Traducido por florencia prieto
  • Comparte
  • Twittea
  • Comparte
  • Pin
  • E-mail
Tutorial de procedimientos almacenados en servidores SQL Server
Los procedimientos almacenados se utilizan para simplificar una serie de tareas que requieren afirmaciones SQL complejas. (background with binary data image by Pedro Nogueira from Fotolia.com)

Los procedimientos almacenados son objetos de base de datos ejecutables compuestos de varias afirmaciones SQL. Ellas ayudan a simplificar la interacción entre la base de datos y el usuario final que no tiene suficiente experiencia para escribir consultas SQL complejas. Puedes utilizar procedimientos almacenados para proporcionar acceso, validación de datos y simplificar procesamiento complejo que requieran de varias afirmaciones SQL. Los procedimientos almacenados pueden aceptar parámetros de entrada, valores de retorno e implementar bucles lógicos como afirmaciones del tipo "si", "mientras" y "en caso de".

Otras personas están leyendo

Necesitarás

  • Analizador de consultas de Microsoft SQL Server

Lista completaMinimizar

Instrucciones

  1. 1

    Crea un procedimiento almacenado mediante la sintaxis CREATE PROCEDURE nombre_del_procedimiento. Introduce las siguientes afirmaciones para crear un procedimiento almacenado llamado sporderscopy que copie el contenido de la tabla Orders en la tabla OrdersCopy.

    CREATE PROCEDURE sporderscopy AS SELECT * into OrdersCopy FROM Orders

    El procedimiento anterior creará una copia de la tabla de pedidos. También puedes agregar parámetros, recompilar y añadir cifrado con la afirmación CREATE PROCEDURE. Los parámetros ayudan a recibir valores en el procedimiento que se requieren para obtener el resultado deseado. Los parámetros de salida se utilizan para almacenar valores que se devuelven a otro programa. Los parámetros opcionales tienen un valor por defecto y no es necesario darles un valor de entrada. La opción de volver a compilar hace que el sistema compile el procedimiento cada vez que se ejecuta. La opción de codificación permite al usuario final obtener el resultado final sin ver el código.

  2. 2

    Los procedimientos almacenados pueden aceptar valores de entrada y volver a pasar los valores de salida al programa que llamó al procedimiento declarando los parámetros. Los parámetros de entrada pueden ser opcionales, si se les asigna un valor por defecto al crear el procedimiento. Los parámetros de salida se definen mediante la especificación de la palabra clave OUTPUT.

    CREATE PROCEDURE sporderscount @total_order money OUTPUT, @order_date smalldatetime = NULL, @customer_var varchar(40) = ‘%’

    AS

    SELECT @total_order = SUM(total_order) FROM orders JOIN customers ON orders.orderID = customers.orderID WHERE (order_date >= @date_var) AND (CustomerName like @customer_var)

    El procedimiento anterior tiene dos parámetros de entrada y devuelve un parámetro de salida. El parámetro de salida se identifica por la palabra clave OUTPUT.

  3. 3

    Ejecuta un procedimiento mediante el uso de la sintaxis EXEC nombre_del_procedimiento. Introduce las siguientes afirmaciones SQL para ejecutar el procedimiento almacenado:

    DECLARE @mytotalorder money EXEC spordercount @mytotalorder = @total_order output, ‘2010-03-21’,’D%’

    La instrucción DECLARE crea una variable de salida que almacenará el valor del parámetro de salida del procedimiento almacenado. La afirmación de ejecución se utiliza para ejecutar el procedimiento almacenado. Dado que los parámetros de entrada tienen valores por defecto, no necesitarán que se les asigne un valor al ejecutar el procedimiento.

  4. 4

    Restaura los valores desde los procedimientos almacenados mediante la adición de la siguiente afirmación:

    RETURN @order_count

    La declaración anterior en un procedimiento almacenado devolverá un valor y lo almacenará en una variable en el programa que llamó al procedimiento. Puedes utilizar un parámetro de retorno o el parámetro de salida para volver a pasar un valor al programa que realizó la llamada. En la afirmación anterior, el procedimiento devolverá el número de filas de la tabla de pedidos.

  5. 5

    Utiliza el comando ALTER PROCEDURE nombre_del_procedimiento para modificar el procedimiento almacenado. La sintaxis es similar a CREATE PROCEDURE. Introduce las siguientes afirmaciones para alterar el procedimiento spordercount para añadir otra variable de estado. El procedimiento almacenado restringirá las filas basándose en el estado de residencia más que en el nombre.

    ALTER PROCEDURE sporderscount @order_state varchar(30) = NULL, @total_order money OUTPUT, @order_date smalldatetime = NULL

    AS

    SELECT @total_order = sum(total_order) FROM orders JOIN customers ON orders.orderID = customers.orderID WHERE (order_date >= @date_var) AND (CustomerState = @order_state)

  6. 6

    Elimina el procedimiento almacenado mediante el comando DROP PROCEDURE nombre_del_procedimiento. No se puede deshacer el efecto del comando DROP. Elimina el procedimiento almacenado spordercount introduciendo la siguiente afirmación:

    DROP PROCEDURE sporderscount

No dejes de ver

Filtrar por:
  • Mostrar todos
  • Artículos
  • Galerías de fotos
  • Videos
Ordenar:
  • Más relevante
  • Más popular
  • Más reciente

No se encuentran artículos disponibles

No se encuentran slideshows disponibles

No se encuentran videos disponibles