Pa

12
INTEGRANTES: Pretell Silva Marleny Ríos Chávez Tabita PROCEDIMIENTOS ALMACENADOS

Transcript of Pa

Page 1: Pa

INTEGRANTES: Pretell Silva Marleny Ríos Chávez Tabita

PROCEDIMIENTOS ALMACENADOS

Page 2: Pa

DEFINICION

Los procedimientos almacenados de Microsoft SQL Server son similares a

los procedimientos de otros lenguajes de programación en el sentido de

que pueden: 

Aceptar parámetros de entrada y devolver varios valores en forma de

parámetros de salida al lote o al procedimiento que realiza la llamada.

Contener instrucciones de programación que realicen operaciones en la

base de datos, incluidas las llamadas a otros procedimientos.

Devolver un valor de estado a un lote o a un procedimiento que realiza

una llamada para indicar si la operación se ha realizado correctamente o

se han producido errores (y el motivo de éstos).

Page 3: Pa

Utilizar procedimientos almacenados en SQL Server en vez de programas

Transact-SQL almacenados localmente en equipos cliente presenta las

siguientes ventajas: Se registran en el servidor. Pueden incluir atributos de seguridad (como permisos) y cadenas de

propiedad; además se les pueden asociar certificados. Mejoran la seguridad de la aplicación. Permiten una programación modular. Constituyen código con nombre que permite el enlace diferido. Pueden reducir el tráfico de red.

Page 4: Pa

SINTAXISLos procedimientos almacenados y rutinas se crean con comandos CREATE

PROCEDURE y CREATE FUNCTION. Una rutina es un procedimiento o una

función. Un procedimiento se invoca usando un comando CALL, y sólo

puede pasar valores usando variables de salida. Una función puede llamarse

desde dentro de un comando como cualquier otra función (esto es,

invocando el nombre de la función), y puede retornar un valor escalar. Las

rutinas almacenadas pueden llamar otras rutinas almacenadas.

Page 5: Pa

ADMINISTRACION DE PROCEDIMIENTOS ALMACENADOS (CREACION, MODIFICACION Y ELIMINACION)CREACIONCuando cree un procedimiento almacenado, deberá especificar lo siguiente: Todos los parámetros de entrada y de salida del lote o del

procedimiento que realiza la llamada. Las instrucciones de programación que realicen operaciones en la

base de datos, incluidas las llamadas a otros procedimientos. El valor de estado devuelto al lote o al procedimiento que realiza la

llamada, a fin de indicar que la operación se ha realizado correctamente o que se ha producido un error (y el motivo del mismo).

Las instrucciones de control de errores necesarias para detectar y administrar posibles errores.

Page 6: Pa

MODIFICACION

Para modificar un procedimiento tener en cuenta: En el Explorador de objetos, conéctese a una instancia de

Motor de base de datos y expándala. Expanda Bases de datos, expanda la base de datos a la

que pertenece el procedimiento y, a continuación, expanda Programación.

Expanda Procedimientos almacenados, haga clic con el botón secundario en el procedimiento que desea modificar y, a continuación, haga clic en Modificar.

Modifique el texto del procedimiento almacenado.

Page 7: Pa

ELIMINACION

Para eliminar un procedimiento en el Explorador de objetos En el Explorador de objetos, conéctese a una instancia de Motor de

base de datos y expándala. Expanda Bases de datos, expanda la base de datos a la que

pertenece el procedimiento y, a continuación, expanda Programación.

Expanda Procedimientos almacenados, haga clic con el botón secundario en el procedimiento que desee eliminar y, a continuación, haga clic en Eliminar.

Para ver los objetos que dependen del procedimiento, haga clic en Mostrar dependencias.

Page 8: Pa

EJEMPLOS

CREAR

CREATE PROCEDURE sp_InsertarComprobante@IDCOMPROBANTE CHAR(4),@DESCRIPCION VARCHAR(100),@NUM INT,@EST CHAR(1)ASBEGININSERT INTO Comprobante(Id_Comprobante, descripcion, Numero, Estado) VALUES(@IDCOMPROBANTE, @DESCRIPCION ,@num, @EST)END

Page 9: Pa

MODIFICAR

CREATE PROCEDURE sp_ModificarComprobacion@IDCOMPROBANTE CHAR (4),@DESCRIPCION VARCHAR(100),@NUM INT,@EST CHAR(1)ASBEGINUPDATE Comprobante SET Descripcion=@descripcion, Numero=@Num, Estado=@EST WHERE Id_Comprobante=@IDCOMPROBANTE

Page 10: Pa

RECOMENDACIONES

Se puede crear otros objetos de base de datos dentro de un

procedimiento almacenado. Puede hacer referencia a un objeto

creado en el mismo procedimiento almacenado, siempre que se cree

antes de que se haga referencia al objeto.

Puede hacer referencia a tablas temporales dentro de un

procedimiento almacenado.

Page 11: Pa

CONCLUSIONES

El procedimiento almacenado nos sirve para que la consulta que se guarde pueda ser llamada con el nombre que se le fue asignado también observe que el procedimiento en el gestor Oracle es muy diferente al que se utiliza en el SQL, algunas de las sentencias que cambian son el BEGIN Y EL END y también como hemos venido utilizando el gestor Oracle al final de cada consulta se cierra con punto y coma.

La ejecución de un procedimiento almacenado con el prejifo "sp_" hace que MS SQL Server 2000 siempre busque primeramente el procedimiento almacenado en el caché de procedimientos almacenados en la base de datos master, lo cual no se refleja con herramientas que permiten la ejecución de T-SQL.