DML Transact SQL Sesión IX Introducción a los procedimientos almacenados.

Slides:



Advertisements
Presentaciones similares
Código: HOL-SQL29. Permite la encriptación de ficheros de registro y de datos mediante clave de encriptación de datos (Database Encryption Key) Encriptación.
Advertisements

Rocío Contreras Aguila Primer Semestre 2010
integridad referencial
VISTAS (VIEWS) DEFINICIÓN Y OBJETIVO DE LAS VISTAS.
Insercion de datos..
Rocío Contreras Águila Primer Semestre 2010
Implementación de procedimientos almacenados
Procedimientos de Almacenado
Base de Datos Orientada a Objetos (OODBMS)
Implementación de funciones definidas por el usuario
Implementación de procedimientos almacenados. Introducción a los procedimientos almacenados Creación, ejecución, modificación y eliminación de procedimientos.
Introducción a Transact-SQL
Administración de archivos de bases de datos
COLEGIO DE BACHILLERES PLANTEL 13 XOCHIMILCO-TEPEPAN MATERIA:TIC EQUIPO:23 PRESENTACION: BASE DE DATOS ALUMNAS: Velazquez Corona Elsa Ponciano Antonio.
Aprendizaje de Microsoft® Access® 2010
Por: Ronald Toscano Pretelt
Presentación Asignatura POF030 Semana 1. Contenido En forma general, los conceptos que se estudiarán en la asignatura son: – Procedures – Functions –
ALGORÍTMICA Dpto. Ingeniería de Sistemas y Automática
Teoría de lenguajes y compiladores
INTERFAZ DE ACCES DISEÑO DE BASE DE DATOS
4.3. Privilegios de usuarios
FUNCIONES Y PROCEDIMIENTOS
PL/SQL Francisco Moreno Universidad Nacional.
SQL SERVER APLICADO (SSA010) Ariel Alexis Fierro Sáez DuocUC.
SESIÓN 2. Completados por el tipo de objeto sobre el que actúan y el objeto concreto: CREATE DATABASE mibase ; Permite crear una base de datos llamada.
Bases de Datos Relacionales
16/04/ Sesión 11 Funciones y procedimientos Ing. Ricardo Inquilla.
Semana 5 Subprogramas..
PROCEDIMIENTOS FUNCIONES
MSC. RUTH VEGA BASES DE DATOS SQL SERVER
Subconsultas Avanzadas
Una base de datos es un “almacén” que nos permite guardar grandes cantidades de información de forma organizada para que luego podamos encontrar y utilizar.
PHP TODO SOBRE PHP.
UNITA - IBARRA TRIGGERS
UNIVERSIDAD NACIONAL AUTONOMA DE MEXICO MODULO IV ADMINISTRACIÓN DE BASES DE DATOS Administración del DBMS E.I. L.E. Prof. Ramón Castro Liceaga SEMINARIO.
1 Microcomputación II Unidad II Administración de datos con MS-SQL Server y Visual Basic Introducción a Transact – SQL: Select, Delete, Update. Tema:
Bases de Datos Relacionales
Diseñando la arquitectura de aplicaciones empresariales. Acceso al SQL Server.- Autenticación de usuario:
Estructura general de un programa en el servidor de Bases de Datos.
Cuentas de usuarios y grupos en windows 2008 server
Trabajo realizado por: Rosa Fernández Extremera Virginia Sánchez López.
COLEGIO DE BACHILLERES PLANTEL 13 XOCHIMILCO-TEPEPAN MATERIA:TIC EQUIPO:21 PRESENTACION: BASE DE DATOS ALUMNAS: Adán Millán Sánchez.
PROCEDIMIENTOS ALMACENADOS Es una consulta almacenada en la base de datos en un servidor. Los P.A. Mejoran el Rendimiento Disminuyen el tráfico. Los P.A.
INTERFAS DE ACCES DISEÑO DE UNA BASE DE DATOS NOMBRE: OLIVARES MORALES ROGELIO DANIEL BAUTISTA CRUZ GRUPO: 307 EQUIPO: 05.
Lenguaje Estructurado de Consulta
EQUIPO:#3 GRUPO:304 NOMBRES: Lizbeth Nava Barón y Erick Ali Mejía.
Diseño de una base de datos y elementos básicos Integrantes: López Ponce de León José Efrén Velazquez Martínez Brenda Equipo:10Grupo:307.
INSTRUCCIONES Elaboración de la Presentación:
Para crear una vista debemos utilizar la sentencia CREATE VIEW, debiendo proporcionar un nombre a la vista y una sentencia SQL SELECT válida. CREATE.
SQL Lenguaje Estructurado de Consulta MATERIA: diseñar sistemas de información ALUMNO: sarmiento flores Liliana Guadalupe GRUPO: 4° “A” TURNO: matutino.
Tema 11 Bases de Datos y el Lenguaje SQL
Uso de las herramientas de consulta de Transact-SQL
Introducción a phpMyAdmin
Práctica Profesional PHP.
SQL (Structured Query Language) Lenguaje orientado a bases de datos y sobre todo, al manejo de consultas; el objetivo principal de SQL es la realización.
Colegio de Bachilleres Plantel 13 Xochimilco - Tepepan
MSSQL SERVER CURSO BÁSICO 1. CONCEPTOS BASICOS DE SQL. DESCRIPCIÓN DEL CURSO. Sesión 3: Índices Uso, Creación, Tipos, Eliminación LENGUAJE DE CONSULTAS.
MSSQL SERVER CURSO BÁSICO 1. DESCRIPCIÓN DEL CURSO. Sesión 4: Sentencia Insert,Transacciones,Insert general, Insert Select * From, Sentencia Update,Update.
Comandos DDL Los comandos DDL son las siglas de Data Definition Language, y se corresponde con el conjunto de órdenes que permiten definir las estructuras.
SQL El lenguaje de consulta estructurado o SQL (por sus siglas en inglés structured query language) es un lenguaje declarativo de acceso a bases de datos.
SQL es un estándar internacional para trabajar con bases de datos, que consta de dos partes: una parte para manipular datos y una parte para definir tipos.
INTEGRANTE: FLORES GODOY JUAN E. Grupo:308. Una tabla es una colección de datos sobre un tema específico, como productos o proveedores. Al usar una tabla.
UNIVERSIDAD LATINA IV. CONSULTAS AVANZADAS CON BASES DE DATOS. E.I. L.E. Prof. Ramón Castro Liceaga.
DLM Transact SQL Sesión I Introducción al SQL Server Uso de las herramientas de consultas del Transact SQL.
DLM Transact SQL Sesión II Recuperación de información.
ALTER TABLE MODIFICAR LA ESTRUCTURA DE LOS OBJETOS DE UNA BASE DE DATOS.
DML Transact SQL Sesión X Triggers. Duración 2 Horas.
Implementación de funciones definidas por el usuario.
Crear una tabla (create table - sp_tables - sp_columns - drop table) Para ver las tablas existentes creadas por los usuarios en una base de datos usamos.
SQL Lenguaje de Consulta estructurado (structured query language) Es un lenguaje declarativo de acceso a bases de datos relacionales que permite especificar.
Transcripción de la presentación:

DML Transact SQL Sesión IX Introducción a los procedimientos almacenados

Introducción a los Procedimientos almacenados Duración 2 Horas

Objetivo Particular Al finalizar el modulo el participante será capaz de trabajar con procedimientos almacenados como objetos propios de las bases de datos.

Introducción Las tareas conjuntadas son una herramienta con gran utilidad en cualquier aplicación el uso de los procedimientos almacenados permite agrupar instrucciones y operaciones como un programa con un solo plan de ejecución

Introducción a los procedimientos almacenados. Objetivo específico: Al finalizar el participante indicará las características de básicas de un procedimiento almacenado sobre SQL Server 2000.

Introducción a los procedimientos almacenados. Un procedimiento almacenado es un pequeño 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 estándar SQL ANSI 92 no especifica nada acerca de ellos.

Introducción a los procedimientos almacenados. Los procedimientos almacenados ofrecen ventajas importantes:  Rendimiento: al ser ejecutados por el motor de base de datos ofrecen un rendimiento inmejorable ya que no es necesario transportar datos a ninguna parte.  Potencia: Permiten ejecutar operaciones complejas en pocos pasos  Centralización: están en un lugar centralizado y pueden ser ejecutados por cualquier aplicación que tenga acceso a la misma.

Introducción a los procedimientos almacenados. Pero también ofrecen una desventaja importante:  Esclavitud: los procedimientos almacenados generan una esclavitud hacia el motor de base de datos. Una base de datos con muchos procedimientos almacenados es prácticamente imposible de migrar a otro motor.

Introducción a los procedimientos almacenados. set term !! create procedure proxcliente (incremento integer) returns (proximocliente integer) as begin proximocliente = gen_id(nextcust, incremento); end; !! set term ; (SP. Realizado en Interbase)

Introducción a los procedimientos almacenados. create procedure int output as = gen_id(nextcust, incremento) GO

Introducción a los procedimientos almacenados. Procedimientos de Sistema y extendidos. Microsoft a desarrollado una serie de procedimientos almacenados para desarrollar una serie de tareas administrativas de la base de datos. Estos procedimientos se encuentran dentro de la base de datos Master, pero pueden ser usados en cualquier base de datos.

Introducción a los procedimientos almacenados. Procedimientos de Sistema y extendidos. Un ejemplo de ello es el procedimiento sp_helptext que permite visualizar la definición de una vista. Los procedimientos extendidos son usados implementados como librerías dinámicas (DLLs) por lo general su nombre empieza con el prefijo “ex_” por ejemplo xp_cmdshell

Introducción a los procedimientos almacenados. Procedimientos definidos por el usuario Un usuario puede crear sus propios procedimientos almacenados, mismos que pueden ser clasificados como: Locales, Temporales o bien Remotos. Los procedimientos locales, son aquellos donde el usuario crea su procedimiento para uso dentro de la base de datos en la que es creado, por lo cual se dice que estará siempre disponible.

Introducción a los procedimientos almacenados. Procedimientos definidos por el usuario Los procedimientos Temporales pueden ser de dos tipos “Locales” y “Globales”, se diferencian por el acceso de las sesiones, los locales comienzan con el simbolo “#” mientras los globales comienzan con doble simbolo “#”, como no son procedimientos físicos no pueden ser visualizados en el navegador de procedimientos

Introducción a los procedimientos almacenados. Procedimientos definidos por el usuario #proc_def  Procedimiento temporal local ##proc_def  Procedimiento temporal global Los procedimientos remotos al igual que los locales existen para una BD. En particular pero pueden ser mandados a ejecución con el nombrado completo de objetos.DBO.

Introducción a los procedimientos almacenados. Practica #1 Inicialice los libros en línea y acceda a Referencia de Transact-SQL dentro de ella expanda Procedimientos almacenados del sistema revise el procedimiento sp_help

Introducción a los procedimientos almacenados. Sp_help Presenta información acerca de un objeto de la base de datos (cualquier objeto de la tabla sysobjects), de un tipo de datos definido por el usuario o de un tipo de datos proporcionado por Microsoft® SQL Server™. … Sintaxis sp_help [ = ] name ]

Introducción a los procedimientos almacenados. Ejecución - Primera Vez Cuando se ejecuta por primera vez un procedimiento almacenado el SQL Server comienza haciendo un “parsing” al procedimiento almacenado, después compila el procedimiento y lo ejecuta por primera vez

Introducción a los procedimientos almacenados. Ejecución – Segunda Vez Después de ejecutar por primera instancia un procedimiento almacenado, SQL Server almacena el plan de ejecución y lo utiliza en el momento de ejecución, por lo cual el trabajo es más rápido.

Creación de procedimientos almacenados. Objetivo específico: Al finalizar el participante trabajará con procedimientos almacenados sencillos sobre SQL Server 2000 partiendo de su creación hasta su eliminación.

Creación de procedimientos almacenados. Sintaxis CREATE PROCEDURE [WITH opción] AS Instrucciones SQL GO

Creación de procedimientos almacenados. Por ejemplo crear un procedimiento que permita mostrar el territorio (TerritoryDescription) y la Región a la que pertenece (RegionDescription) de las tablas Region y Territories de la Base de datos Northwind Este procedimiento contendrá dentro de él únicamente una instrucción SELECT

Creación de procedimientos almacenados. Create procedure sp_terr as select t.TerritoryDescription, r.RegionDescription from Territories t join Region r on t.RegionID = r.RegionID Compile el procedimiento (F5) Ejecute el procedimiento

Creación de procedimientos almacenados. Plan de Ejecución

Creación de procedimientos almacenados.

Limitaciones:  Soportan hasta 128MB de tamaño  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

Creación de procedimientos almacenados. Revisión de la definición Para revisar desde el analizador de consultas el contenido del procedimiento almacenado basta con usar el procedimiento de sistema SP_HELPTEXT Para la revisión de aspectos generales se puede usar el procedimiento de sistema SP_HELP

Creación de procedimientos almacenados. Evitando ver la definición Para evitar que cualquier usuario pueda accesar a la definición del procedimiento almacenado, se agrega la cláusula WITH ENCRYPTION después de especificar el nombre. CREATE PROCEDURE WITH ENCRYPTION AS Instrucciones SQL GO

Creación de procedimientos almacenados. Practica #2 Cree un procedimiento almacenado que muestre de la tabla Products los campos ProductID, ProductName y UnitPrice, la definición del procedimiento debe permanecer cifrada. Ejecute el procedimiento Analice el plan de ejecución Revise que la definición no se visualice

Creación de procedimientos almacenados. Modificación de Procedimientos Se puede cambiar la definición de los procedimientos almacenados usando la instrucción ALTER PROCEDURE, cuando se modifica un procedimiento, realmente lo que se lleva acabo es un borrado y una re- creación.

Creación de procedimientos almacenados. Borrando un procedimiento Cuando se desea eliminar un procedimiento almacenado, debe de ejecutar la instrucción DROP PROCEDURE Microsoft recomienda revisar que objetos son dependientes del procedimiento antes de eliminarlo SP_DEPENDS

Creación de procedimientos almacenados. Practica #3 Modifique el procedimiento del ejercicio anterior para que además muestre la cantidad de registros existentes en la tabla de Products, esto a través de una consulta.

Uso de parámetros. Objetivo específico: El participante utilizará diversos parámetros a los procedimientos almacenados tales como de entrada y de salida.

Uso de parámetros. Parámetros de entrada CREATE PROCEDURE ] [=valor_default] [WITH opción] AS Instrucciones SQL GO

Uso de parámetros. Crear un procedimiento almacenado que reciba de entrada una concordancia de caracteres y muestre la región (RegionDescription) de aquellas regiones que contengan esa subcadena. create procedure varchar(50) = null as select select * from region where RegionDescription

Uso de parámetros. La definición por default permite que no se marque error si el procedimiento no recibe el parámetro indicado. Para verificar si existe valor en el parámetro basta checar con un IF is null print 'No existe subcadena de comparación' else Begin select select * from region where RegionDescription End

Uso de parámetros. Parámetros de Salida CREATE PROCEDURE ] [=valor_default] output [WITH opción] AS Instrucciones SQL GO Ejecución anidada de procedimientos EXEC

Uso de parámetros. Otras capacidades  Uso de variables tipo_dato)  Uso de ciclos (While... begin... end)  Mensajes de error (RAISERROR)  Variable de sistema

Conclusión Uno de los objetos más complejos de la base de datos son los procedimientos almacenados, su desarrollo y comprensión requieren de tiempo y facilidad de programación en la mayoría de los casos, esta unidad permitió al usuario comprender su manejo y utilización básica de los mismos.