viernes, julio 21, 2006

Cursores y Funciones en MS SQL Server 2000

Frecuentemente estoy utilizando los cursores y funciones en MS SQL Server 2000, pero también es frecuente que olvide la sintaxis, por eso publico éstas referencias.

Para crear un CURSOR


declare @VARIABLE varchar(50) ---- Declaración de variables a utilizar (segun sea el caso)

declare CursorName cursor for ---- Declarar el nombre del cursor
select Variable from TablaName ---- Consulta que recorrerá el cursor
open CursorName ---- Abrir el cursor
fetch next from CursorName into @VARIABLE ---- Asingación de las variables del cursor al primer registro
while @@fetch_status = 0 ---- Iniciar el ciclo
begin
----- Aquí va el conjunto de acciones que realizara el cursor
----- Aquí va el conjunto de acciones que realizara el cursor
fetch next from CursorName into @VARIABLE ---- Antes de terminar el ciclo tengo que avanzar al siguiente registro
end
close CursorName ---- Cerrar el cursor
deallocate CursorName ---- Desalojar de la memoria el cursor

Para crear una función escalar:


-- =============================================
-- Create scalar function (FN)
-- =============================================
CREATE FUNCTION
(@Parameter1> ,
<@Parameter2> )
RETURNS
AS
BEGIN

-- eg.
-- DECLARE @sum AS int
-- SELECT @sum = @p1 + @P2
-- RETURN @sum
END
GO

-- =============================================
-- Example to execute function
-- =============================================
SELECT dbo.fn_FunctionName
(value_for_@Parameter1,
value_for_@Parameter1)

GO


No hay comentarios.: