Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Transact SQL
Introduccin a los
Procedimientos
almacenados
Introduccin
Las tareas conjuntadas son una
herramienta con gran utilidad en cualquier
aplicacin el uso de los procedimientos
almacenados permite agrupar
instrucciones y operaciones como un
programa con un solo plan de ejecucin
Introduccin a los
procedimientos almacenados.
Un procedimiento almacenado es un
pequeo programa almacenado en la
base de datos que puede ser ejecutado
en cualquier momento. Los
procedimientos almacenados, al igual que
los disparadores, utilizan un lenguaje
propietario ya que el estndar SQL ANSI
92 no especifica nada acerca de ellos.
Introduccin a los
procedimientos almacenados.
Los procedimientos almacenados ofrecen
ventajas importantes:
Plan de Ejecucin
Creacin de procedimientos
almacenados.
Creacin de procedimientos
almacenados.
Limitaciones:
Soportan hasta 128MB de tamao
Se pueden anidar hasta 32 niveles de PA.
(anidar un procedimiento es cuando uno
llama a otro)
No se pueden realizar las siguientes
operaciones: CREATE DEFAULT, CREATE
PROCEDURE, CREATE RULE, CREATE
TRIGGER, CREATE VIEW
Creacin de procedimientos
almacenados.
Revisin de la definicin
Para revisar desde el analizador de consultas
el contenido del procedimiento almacenado
basta con usar el procedimiento de sistema
SP_HELPTEXT <nombre>
Parmetros de entrada
CREATE PROCEDURE <nombre>
[@nombre_parametro <tipo de dato>]
[=valor_default]
[WITH opcin]
AS
Instrucciones SQL
GO
Ejemplo
Crear un procedimiento que determine si existe o
no el registro en la tabla clientes, al introducir los
valores de entrada nombre y telefono
Uso de parmetros.
Crear un procedimiento almacenado que
reciba de entrada una concordancia de
caracteres y muestre la regin
(RegionDescription) de aquellas regiones
que contengan esa subcadena.
create procedure sp_tab
@name varchar(50) = null
as
select @name='%'+@name+'%'
select * from region where RegionDescription like
@name
Uso de parmetros.
La definicin por default permite que no se
marque error si el procedimiento no recibe el
parmetro indicado.
Para verificar si existe valor en el parmetro
basta revisar con un IF
if @name is null
print 'No existe subcadena de comparacin'
else
Begin
select @name='%'+@name+'%'
select * from region where RegionDescription like @name
End
Uso de parmetros.
Parmetros de Salida
CREATE PROCEDURE <nombre>
[@nombre_parametro <tipo de dato>] [=valor_default]
output
[WITH opcin]
AS
Instrucciones SQL
GO
Ejecucin anidada de procedimientos
EXEC <procedimiento>
Uso de parmetros.
Otras capacidades
Uso de variables (declare @<variable>
tipo_dato)
Uso de ciclos (While <expresin_lgica> ...
begin ... end)
Mensajes de error (RAISERROR)
Variable de sistema (@@ERROR)
Conclusin
Uno de los objetos ms complejos de la
base de datos son los procedimientos
almacenados, su desarrollo y
comprensin requieren de tiempo y
facilidad de programacin en la mayora
de los casos, esta unidad permiti al
usuario comprender su manejo y
utilizacin bsica de los mismos.