Programación de T-SQL de procedimientos almacenados
Varias personas solo saben hacer consultas simples en sql server, sin embargo se puede programar bastantes cosas en SQL Server.
Este artículo muestra un ejemplo de un procedimiento almacenado que muestra el factorial de un número.
Primero creamos el procedimiento almacenado, luego la llamamos.
Este es un buen ejemplo porque podemos apreciar las sentencias if, los ciclos while en sql server.
Este código funciona en cualquier sql server.
Para más información y ejemplos sobre creación de procedimientos almacenados en sql server:
http://msdn.microsoft.com/es-es/library/ms187926(SQL.90).aspx
Para más información y ejemplos sobre el uso del if en sql server:
http://msdn.microsoft.com/es-es/library/ms182717(SQL.90).aspx
Para más información y ejemplos sobre el uso del while en sql server:
http://msdn.microsoft.com/es-es/library/ms178642(SQL.90).aspx
/* Cortesía de Ariel Romero
Si existe el procedimiento, borrarlo*/
IF OBJECT_ID ('factorial','P') IS NOT NULL
DROP PROCEDURE factorial;
GO
CREATE PROCEDURE factorial
@num bigint
AS
IF(@num <= 1)
PRINT (1)
ELSE
BEGIN
DECLARE @res bigint
SET @res = @num;
SET @num = @num - 1;
WHILE(@num > 1)
BEGIN
SET @res = @res * @num;
SET @num = @num - 1;
END
PRINT (@res)
END
Para ejecutar el procedimiento almacenado vamos a ver el factorial de 3 que tendría que retornar 6:
execute factorial '3';
Comentarios
Publicar un comentario