PROCEDIMIENTOS ALMACENADOS

12
ESPECIALIDAD: Ing. Sistemas y telemática CICLO: VI CURSO: Base de Datos I TEMA: Procedimientos Almacenados PROFESOR: Marco Porro Chulli INTEGRANTES: Alcira Gonzales Muñoz Lisbeth Alexandra Vasquez Cieza

Transcript of PROCEDIMIENTOS ALMACENADOS

Page 1: PROCEDIMIENTOS ALMACENADOS

ESPECIALIDAD: Ing. Sistemas y telemáticaCICLO: VI CURSO: Base de Datos ITEMA: Procedimientos AlmacenadosPROFESOR: Marco Porro ChulliINTEGRANTES: Alcira Gonzales Muñoz

Lisbeth Alexandra Vasquez Cieza

Page 2: PROCEDIMIENTOS ALMACENADOS

Procedimientos almacenados

Un procedimiento almacenado de SQL Server es un grupo de una o varias instrucciones Transact-SQL. Los procedimientos se asemejan a las construcciones de otros lenguajes de programación, porque pueden: Aceptar parámetros de entrada y devolver varios valores en forma de parámetros de

salida al programa que realiza la llamada.

Contener instrucciones de programación que realicen operaciones en la base de datos. Entre otras, pueden contener llamadas a otros procedimientos.

Devolver un valor de estado a un programa que realiza una llamada para indicar si la operación se ha realizado correctamente o se han producido errores, y el motivo de

DEFINICIÓN

Page 3: PROCEDIMIENTOS ALMACENADOS

SINTAXIS

Page 4: PROCEDIMIENTOS ALMACENADOS

ADMINISTRACION DE LOS PROCEDIMIENTOS ALMACENADOS

CREACIÓN: Utilice la instrucción CREATE PROCEDURE para crearlos en la base de datos. Puede añadir hasta 32 niveles.

USE NorthwindGOCREATE PROC dbo.OverdueOrdersASSELECT * FROM dbo.Orders WHERE RequiredDate < GETDATE() AND ShippedDate IS NullGO

Page 5: PROCEDIMIENTOS ALMACENADOS

ADMINISTRACION DE LOS PROCEDIMIENTOS ALMACENADOS

MODIFICACIÓN: Utilice la instrucción ALTER PROCEDURE. No afecta a los procedimientos almacenados añadidos.

USE NorthwindGOALTER PROC dbo.OverdueOrdersASSELECT CONVERT(char(8), RequiredDate, 1) RequiredDate, CONVERT(char(8), OrderDate, 1) OrderDate, OrderID, CustomerID, EmployeeIDFROM OrdersWHERE RequiredDate < GETDATE() AND ShippedDate IS NullORDER BY RequiredDateGO

Page 6: PROCEDIMIENTOS ALMACENADOS

ADMINISTRACION DE LOS PROCEDIMIENTOS ALMACENADOS

ELIMINACIÓN: Ejecute el procedimiento almacenado sp_depends para determinar si los objetos dependen del procedimiento almacenado.

Page 7: PROCEDIMIENTOS ALMACENADOS

ADMINISTRACION DE LOS PROCEDIMIENTOS ALMACENADOS

ELIMINACIÓN: Ejecute el procedimiento almacenado sp_depends para determinar si los objetos dependen del procedimiento almacenado.

Page 8: PROCEDIMIENTOS ALMACENADOS

RESUMEN

Los procedimientos almacenados no son nuevos en la industria de las bases de datos, como referenciase tiene a ORACLE, que presentó PL/SQL 2. A la publicación de este documento es MYSQL el más reciente poseedor de procedimientos almacenados, esto invita a algunos expertos en la materia a mencionar que con esta incorporación este DBMS ha llegado a su mayoría de edad, aunque sin aventurarse a mencionar que pudiera ser una competencia seria para los grandes en esta rama como lo son ORACLE Y SQLSERVER. Los procedimientos almacenados son una herramienta que todo desarrollador debe tener en cuenta siempre, ya que proporcionan un rendimiento en términos de velocidad e incrementan la seguridad en su sistema de base de datos, es por ello que su empleo en los diferentes proyectos incrementa localidad del desarrollo de software.

Page 9: PROCEDIMIENTOS ALMACENADOS

RECOMENDACIONES

El usuario debe ser el propietario de todos los procedimientos almacenados.

Un procedimiento almacenado por tarea debe de crear, probar y solucionar problemas.

Evite sp_Prefix en los nombres de procedimientos almacenados.

Utilice la misma configuración de conexión para todos los procedimientos almacenados.

Reduzca al mínimo la utilización de procedimientos almacenados temporales.  No elimine nunca directamente las entradas de Syscomments.

Page 10: PROCEDIMIENTOS ALMACENADOS

CONCLUSIÓN La ejecución de un procedimiento almacenado con el prefijo "sp_"

hace que MS SQL Server 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. La utilización del prefijo "sp_" hace que MS SQL Server trabaje con los procedimientos almacenados de forma similar al modo que debe trabajar cuando no hay más memoria disponible en el servidor y no puede agregar nuevas entradas al caché, por lo cual debe recompilar continuamente todos los procedimientos almacenados que se ejecuten.

Page 11: PROCEDIMIENTOS ALMACENADOS

APRECIACIÓN DE EQUIPO Los SP en general, serán realmente útiles (y aplicables) en caso

de estar desarrollando aplicaciones robustas, de categoría empresarial, o para servicios que deben ser seguros, que posean alta disponibilidad y con vistas a ser escalables.

Lo más importante de todo, los procedimientos almacenados SIEMPRE serán más rápidos que una consulta externa. Si no lo son, es por dos motivos: No puedes escribir procedimientos almacenados, y El gestor de base de datos que estas usando es deficiente.

Page 12: PROCEDIMIENTOS ALMACENADOS