Gestión de nóminas diciembre 2011
|
|
- María Teresa Mora Prado
- hace 7 años
- Vistas:
Transcripción
1 Contexto del problema Una empresa ha decidido desarrollar un sistema de información cuyo objetivo principal es la gestión de las nóminas de sus empleados. Iniciado el estudio del dominio del problema, de las necesidades de negocio y de la situación actual y realizadas varias entrevistas, se ha desarrollado un primer borrador del siguiente glosario de términos y de los siguientes requisitos que debe cumplir el sistema a desarrollar. Glosario de términos (por orden alfabético) Categoría: cada uno de los perfiles profesionales fijados en el convenio colectivo de la empresa. A cada categoría le corresponde un salario base. Todos los empleados de la empresa pertenecen a alguna categoría, aunque esa adscripción puede cambiar a lo largo del tiempo. Complemento personal: cantidad acordada individualmente entre cada empleado y la empresa que se incluye como parte de la nómina. Puede variar a lo largo del tiempo. Convenio colectivo: acuerdo periódico entre la empresa y los trabajadores por el que se establecen, entre otras cuestiones, las cantidades de los salarios base correspondientes a las categorías. Empleado: persona contratada alguna vez por la empresa. Grupo de trabajo: unidad organizativa de la empresa compuesta por un grupo de empleados, uno de los cuales es el jefe del grupo de trabajo y el resto, los subordinados. Nómina: retribución devengada mensualmente por la empresa a cada empleado en función de su categoría y de su complemento personal. Salario base: cantidad correspondiente a una categoría que se abona en las nóminas de los empleados. Su importe varía en función de los acuerdos alcanzados en los convenios colectivos. Requisitos de información RI-001 Información sobre categorías - El sistema deberá almacenar la información correspondiente a las categorías profesionales por las que puede pasar un empleado de la empresa. En concreto: nombre de la categoría y salario base correspondiente actualmente a la categoría. RI-002 Información sobre empleados - El sistema deberá almacenar la información correspondiente a los empleados que trabajan o han trabajado en la empresa. En concreto: dni, nombre, apellidos, domicilio, población, código postal, fecha de alta en la empresa, fecha de baja en la empresa (si ya no trabaja en la empresa) y la categoría y el complemento salarial en vigor. También se deberá conocer el jefe del empleado (si lo tuviera) y los subordinados a su cargo (si los tuviera). Página 1 de 7
2 RI-003 Información sobre nóminas - El sistema deberá almacenar la información correspondiente a las nóminas emitidas de cada empleado. En concreto: mes y año correspondiente a la nómina y el salario abonado, especificando el salario base, la categoría y el complemento personal vigentes en el mes en el que se emite la nómina. Requisitos de reglas de negocio RN-001 Jefes y subordinados - El sistema deberá respetar la siguiente regla de negocio: un jefe tiene cómo máximo cinco empleados bajo su supervisión. RN-002 Bajas en la empresa - El sistema deberá respetar la siguiente regla de negocio: para que se pueda dar de baja un empleado en la empresa la fecha de baja debe ser, como mínimo, un día posterior a la fecha del alta. Requisitos funcionales RF-001 Generación mensual de la nómina El sistema deberá generar automáticamente la nómina mensual para todos los empleados en función de su categoría y complemento salarial personal. RF-002 Salario actual El sistema deberá ser capaz de calcular automáticamente el salario actual de un empleado dado, sumando para ello el salario base de su categoría actual y su complemento personal en vigor. Ejercicios 1. Teniendo en cuenta el enunciado anterior, elabore un modelo conceptual usando tantos diagramas de clases UML como considere necesario. 2. Plantee un posible escenario con varios empleados, categorías y nóminas. Elabore el diagrama de objetos correspondiente al escenario. 3. Transforme el modelo conceptual desarrollado en el punto anterior en un esquema relacional. 4. Genere un esquema SQL para ORACLE correspondiente a los requisitos y al esquema conceptual con los artefactos que considere necesarios: triggers, secuencias, funciones, procedimientos, etc. Página 2 de 7
3 Solución (modelo conceptual) class subordinado 0..5 dirigea {Al menos un día de alta: la fecha de baja (si existe) debe ser al menos un día posterior a la de alta.} jefe 0..1 Empleado dni nombre apellidos domicilio población códigopostal fechaalta fechabaja [0..1] complemento * Nómina * tiene 1 Categoría nombre salariobase 1 mes año salariobase complemento * Figura 1: Modelo conceptual Solución (escenario) n1: Nómina e2: Empleado mes = noviembre año = 2011 salariobase = complemento = 600 c1: Categoría nombre = Traductor salariobase = c2: Categoría tiene dni = nombre = Joseph apellidos = Inglés Inglés domicilio = c/ Vieja, 13 población = Sevilla códigopostal = fechaalta = 1/12/2011 complemento = 800 nombre = Administrativo salariobase = e1: Empleado dni = nombre = Juan apellidos = Español Español domicilio = c/ Nueva, 4 población = Sevilla códigopostal = fechaalta = 1/1/2008 complemento = 600 tiene c3: Categoría nombre = Contable salariobase = n3: Nómina mes = diciembre año = 2011 salariobase = complemento = 800 n2: Nómina mes = diciembre año = 2011 salariobase = complemento = 600 Figura 2: Escenario con dos empleados en activo, uno de los cuáles ha cambiado de categoría entre noviembre y diciembre de 2011 Página 3 de 7
4 Solución (modelo relacional) Figura 3: Modelo relacional Solución (SQL Oracle) /* Archivo:.sql Contenido: Esquema Oracle del boletín de IISSI Fecha: 12/12/2011 Autor: Carlos Arévalo Versión: 1.0 */ /* Última actualización: 16/12/ /12/2011 (Amador Durán) Revisión y pequeños cambios. */ /* Borrado de tablas por orden jerárquico */ drop table Nominas; drop table Empleados; drop table Categorias; Página 4 de 7
5 /* Tabla de Categorías */ create table Categorias ( id smallint primary key, nombre varchar(50) not null, salariobase number(6,2) not null /* Tabla de Empleados */ create table Empleados ( dni number(8) primary key, nombre varchar(20) not null, apellidos varchar(50) not null, domicilio varchar(50) not null, poblacion varchar(50) not null, codigopostal number(5) not null, fechaalta date not null, fechabaja date, complemento number(6,2) not null, jefe number(8), categoria smallint not null, foreign key(jefe) references Empleados, foreign key(categoria) references Categorias /* Tabla de Nóminas */ create table Nominas ( dni number(8), mes number(2) check( mes between 1 and 12 ), anyo number(4), categoria smallint not null, salariobase number(6,2) not null, complemento number(6,2) not null, primary key(dni,mes,anyo), foreign key(dni) references Empleados, foreign key(categoria) references Categorias /* Trigger para la restricción "Al menos un día de alta" */ create or replace trigger AlMenosUnDiaDeAlta before insert or update of fechaalta, fechabaja on empleados for each row if ( :new.fechabaja is not null ) and ( :new.fechabaja <= :new.fechaalta ) then raise_application_error( , 'La fecha de baja (si existe) debe ser al menos un día posterior a la de baja.' end if; /* Trigger para el RN-001 Jefes y subordinados */ create or replace trigger NoMasDe5Subordinados before insert or update of jefe on empleados for each row declare subordinados integer; -- número de empleados subordinados -- cuenta los subordinados antes de actualizar o insertar select count(*) into subordinados from empleados where jefe = :new.jefe; -- si ya tiene 5 o más subordinados... if ( subordinados >= 5 ) then raise_application_error( , 'Superado el límite de subordinados con ' :new.nombre ' ' :new.apellidos end if; Página 5 de 7
6 /* Procedimiento para generar las nóminas de un mes (RF-001) */ create or replace procedure GenerarNomina( mesnomina number, anyonomina number ) is -- comprobar validez de los parámetros if ( mesnomina < 1 ) or ( mesnomina > 12 ) then raise_application_error( , 'GenerarNomina: mes inválido' end if; -- insertamos el resultado de la consulta insert into Nominas( dni, mes, anyo, categoria, salariobase, complemento ) select e.dni, mesnomina, anyonomina, e.categoria, c.salariobase, e.complemento from empleados e inner join categorias c on ( e.categoria = c.id /* Procedimiento para generar un listado de las nóminas de un mes con un cursor */ create or replace procedure ListarNomina( mesnomina number, anyonomina number ) is cursor c is select e.dni, e.apellidos, e.nombre as nombreemp, c.nombre as nombrecat, n.salariobase, n.complemento from ( empleados e inner join categorias c on ( e.categoria = c.id ) ) inner join nominas n on ( e.dni = n.dni ) where n.mes = mesnomina and n.anyo = anyonomina order by nombrecat, e.apellidos, nombreemp; fila c%rowtype; dbms_output.put_line('listado de nóminas de ' mesnomina ' de ' anyonomina dbms_output.put_line(' ' for fila in c loop dbms_output.put_line( rpad( fila.nombrecat, 20 ) rpad( fila.apellidos, 20 ) rpad( fila.nombreemp, 20 ) rpad( fila.salariobase, 20 ) rpad( fila.complemento, 20 ) end loop; end ; /* Función para calcular el salario bruto actual de un empleado (RF-002) */ create or replace function SalarioActual ( dniempleado number ) return number is salariobruto number; select ( e.complemento + c.salariobase ) into salariobruto from categorias c inner join empleados e on ( c.id = e.categoria ) where e.dni = dniempleado; return salariobruto; /* Carga de datos inicial */ create or replace procedure CargarDatos is mes number; dbms_output.put_line( 'Cargando base de datos de nóminas' dbms_output.put_line( ' ' dbms_output.put_line( 'Creando categorías...' /* Carga de categorías */ insert into categorias( id, nombre, salariobase ) values ( 1, 'Programador', 800 insert into categorias( id, nombre, salariobase ) values ( 2, 'Analista', 1200 insert into categorias( id, nombre, salariobase ) values ( 3, 'Jefe de proyecto', 2000 insert into categorias( id, nombre, salariobase ) values ( 4, 'Administrativo', 1000 insert into categorias( id, nombre, salariobase ) values ( 5, 'Traductor', 1100 Página 6 de 7
7 dbms_output.put_line( 'Creando empleados...' /* Carga de empleados */ values ( , 'Juan', 'Español Español', 'c/ Nueva, 4', 'Sevilla', 41092, to_date('1/1/2008','dd/mm/yyyy'), 1000, 3, null values ( , 'Joseph', 'Inglés Inglés', 'c/ Vieja, 13', 'Sevilla', 41092, to_date('1/12/2011','dd/mm/yyyy'), 800, 5, values ( , 'Antonio', 'Francés Francés', 'c/ Cuesta, 10', 'Sevilla', 41092, to_date('1/10/2010','dd/mm/yyyy'), 300, 1, values ( , 'Francisco', 'Portugués Portugués', 'c/ Valle, 7', 'Sevilla', 41092, to_date('1/9/2008','dd/mm/yyyy'), 500, 2, values ( , 'Ángela', 'Alemana Alemana', 'c/ Arriba, 1', 'Sevilla', 41092, to_date('1/9/2011','dd/mm/yyyy'), 400, 4, values ( , 'Sarkozy', 'Francés Francés', 'c/ Abajo, 2', 'Sevilla', 41092, to_date('1/4/2009','dd/mm/yyyy'), 200, 1, values ( , 'Rajoy', 'Gallego Gallego', 'c/ Compostela, 23', 'Sevilla', 41092, to_date('1/5/2009','dd/mm/yyyy'), 600, 4, dbms_output.put_line( 'Generando nóminas de ' /* Carga de nóminas de 2011 */ for mes in loop GenerarNomina( mes, 2011 end loop; commit; execute CargarDatos; /* Pruebas sencillas */ /* Listado de categorías */ select id, nombre, salariobase from Categorias; /* Listado de empleados */ select dni, rpad( nombre ' ' apellidos, 30 ) as nombre, fechaalta, complemento from Empleados; /* Listado de nóminas */ select * from Nominas; /* Prueba de la función SalariaActual */ select dni, complemento, salariobase, SalarioActual( dni ) from Empleados e inner join Categorias c on ( e.categoria = c.id /* Prueba del trigger NoMasDe5Subordinados (debe fallar) */ values ( , 'Empleado', 'Fuera Fuera', 'c/ Fundación, 100', 'Sevilla', 41092, to_date('1/5/2006','dd/mm/yyyy'), 1200, 3, Página 7 de 7
Departamento de Lenguajes y Sistemas Informáticos
Departamento de Lenguajes y Sistemas Informáticos Avda Reina Mercedes s/n. 41012 Sevilla Tlf/Fax 954 557 139 E-mail lsi@lsi.us.es www.lsi.us.es E.T.S. Ingeniería Informática Diseño de bases de datos Anexo
Más detallesTriggers 24/12/2016. Escuela Técnica Superior de Ingeniería Informática Departamento de Lenguajes y Sistemas Informáticos. Triggers en Oracle
Triggers en Oracle Grupo de Ingeniería del Software y Bases de Datos Universidad de Sevilla Diciembre 2016 Introducción Objetivos de la práctica Conocer qué son los y para qué se utilizan Aprender a construir
Más detallesDepartamento de Lenguajes y Sistemas Informáticos E.T.S. de Ingeniería Informática Universidad de Sevilla Avda Reina Mercedes, s/n.
Departamento de Lenguajes y Sistemas Informáticos E.T.S. de Ingeniería Informática Universidad de Sevilla Avda Reina Mercedes, s/n. 41012 SEVILLA 1 DISEÑO DE BASES DE DATOS (23 Septiembre 2003) Problema
Más detallesIntroducción a la Ingeniería del Software y a los Sistemas de Información. Alojamientos. octubre Enunciado
Enunciado La trascripción que aparece a continuación corresponde a una entrevista con una emprendedora que quiere crear una empresa de gestión de alquileres de apartamentos turísticos. Pregunta: Bien,
Más detallesOracle Database y Oracle SQL Developer
Oracle Database y Oracle Grupo de Ingeniería del Software y Bases de Datos Departamento de Lenguajes y Sistemas Informáticos Universidad de Sevilla noviembre 2014 Objetivos Objetivos de este tema Utilizar
Más detallesDISEÑO DE BASES DE DATOS ºC Examen 8/Feb/2006
Cuestión: Control de concurrencia Haga un cuadro comparativo de las ventajas e inconvenientes de los distintos métodos de control de concurrencia que conozca (en filas: el método, en columnas: ventajas
Más detallesCuestión: Proceso de consultas en BD Relacionales. Problema 1: Diseño conceptual
Cuestión: Proceso de consultas en BD Relacionales Políticas y heurísticas para la optimización de árboles algebraicos. Peso: 5% Tiempo:5min Problema : Diseño conceptual Una empresa decide crear un portal
Más detallesExamen de Ficheros y bases de datos Convocatoria de junio II PARCIAL
Examen de Ficheros y bases de datos Convocatoria de junio II PARCIAL ) 3 puntos) Considérese un fichero secuencial con un índice con asociación estática. El índice es primario y está organizado sobre una
Más detallesDiseño de bases de datos
Departamento de Lenguajes y Sistemas Informáticos E.T.S. Ingeniería Informática. Universidad de Sevilla Avda Reina Mercedes s/n. 41012 Sevilla Tlf/Fax 954 557 139 E-mail lsi@lsi.us.es Web www.lsi.us.es
Más detallesPL/SQL avanzado: Secuencias, triggers, cursores y subprogramas
avanzado 22/11/2016 avanzado: Secuencias, triggers, cursores y subprogramas Grupo de Ingeniería del Software y Bases de Datos Departamento de Lenguajes y Sistemas Informáticos Universidad de Sevilla Noviembre
Más detallesOracle Database y Oracle SQL Developer
Oracle Database y Oracle 15/11/2012 Oracle Database y Oracle Grupo de Ingeniería del Software y Bases de Datos Departamento de Lenguajes y Sistemas Informáticos Universidad de Sevilla noviembre 2012 Objetivos
Más detallesOracle Express y Toad for Oracle
6. Creación de Oracle y Toad for Oracle Grupo de Ingeniería del Software y Bases de Datos Universidad de Sevilla octubre 2011 Toad for Oracle 6. Creación de Objetivos de este tema Conocer Oracle Conocer
Más detallesDISEÑO DE BASES DE DATOS 2007/2008 2ºC Examen 18/Jun/2008. Cuestiones. Problema 1: Diseño conceptual BD
Avda Reina Mercedes s/n. 402 Sevilla Examen 8/Jun/2008 Cuestiones Q. Compare los algoritmos pesimistas de control de concurrencia con los algoritmos optimistas. Cuál es la política de cada uno? En qué
Más detallesTriggers en PL/SQL. Jonathan Medina Gómez Facultad de Ingeniería Universidad de Antioquia
Triggers en PL/SQL Jonathan Medina Gómez Facultad de Ingeniería Universidad de Antioquia Triggers (Disparadores) Los triggers son bloques PL/SQL que se ejecutan de manera implícita cuando se están manipulando
Más detallesBases de Datos Curso Grado en Ingeniería del Software Examen Septiembre. Nombre: Se debe entregar esta hoja
Bases de Datos Curso 2015-2016 Grado en Ingeniería del Software Examen Septiembre Nombre: Se debe entregar esta hoja 1) (4 puntos) A partir de la información sobre la BD que se describe más abajo, se pide:
Más detallesEjercicios SQL - Definición de Datos - Solución
Ejercicios SQL - Definición de Datos - Solución Ejercicio 1: Disponemos de la siguiente Base de Datos para gestionar la información de los pubs de una determinada provincia. PUB TITULAR EMPLEADO #COD_PUB
Más detallesEXAMEN: BASES DE DATOS 4º Ingeniería Informática (31 de enero de 2008)
EXAMEN: BASES DE DATOS 4º Ingeniería Informática (31 de enero de 2008) Autorizo la publicación de la nota del examen junto a mi número de matrícula, tanto en la Web como en los tablones SI NO PARTE TEÓRICA
Más detallesEscuela Técnica Superior de Ingeniería Informática Departamento de Lenguajes y Sistemas Informáticos. Triggers
Triggers Grupo de Ingeniería del Software y Bases de Datos Universidad de Sevilla octubre 2011 Introducción Objetivos de la práctica Conocer qué son los y para qué se utilizan Aprender a construir Consultar
Más detallesTriggers 27/11/2014. Escuela Técnica Superior de Ingeniería Informática Departamento de Lenguajes y Sistemas Informáticos. Triggers en Oracle
Triggers en Oracle Grupo de Ingeniería del Software y Bases de Datos Universidad de Sevilla noviembre 2012 Introducción Objetivos de la práctica Conocer qué son los y para qué se utilizan Aprender a construir
Más detallesBases de Datos Ejercicio Número 2 Bogotá, Diciembre 5 de 2013
Bases de Datos Ejercicio Número 2 Bogotá, Diciembre 5 de 203 Enunciado del ejercicio En los servidores de bases de asignados al curso: Sybase, MS SQL Server y Oracle, elaborar el ejercicio sobre aislamiento,
Más detallesTriggers. BASES DE DATOS Mercedes García Merayo
Triggers BASES DE DATOS Mercedes García Merayo Triggers Un trigger es código (PL/SQL) que se ejecuta automáticamente cuando se realiza una determinada acción sobre la base de datos. Tipos de triggers Triggers
Más detallesIntroducción a SQL (DDL)
Introducción a SQL (DDL) Grupo de Ingeniería del Software y Bases de Datos Departamento de Lenguajes y Sistemas Informáticos Universidad de Sevilla noviembre 2012 Introducción a SQL Objetivos de este tema
Más detallesCursores, Triggers, Indices, Transacciones, Vistas Gestión y Modelación de Datos
Cursores, Triggers, Indices, Transacciones, Vistas Gestión y Modelación de Datos Cursores CREATE OR REPLACE FUNCTION incsalario (INTEGER) RETURNS TEXT AS ' DECLARE curemp CURSOR FOR SELECT nombres, apellidos,
Más detallesT07 Opciones de integridad referencial
1 de 9 17/05/2013 13:48 Lecciones SQL > T07 Opciones de integridad referencial Contenidos 1 Las opciones para mantener la integridad Las opciones para mantener la integridad referencial 2 On delete referencial
Más detallesJair Ospino Ardila -- Guía Sencilla
Jair Ospino Ardila -- jairospino@ingenieros.com Guía Sencilla Son procedimientos que se ejecutan cumple una condición establecida. automáticamente cuando se Los triggers pueden ser de: Inserción (INSERT)
Más detallesPara procesar instrucciones SELECT que devuelvan más de una fila, son necesarios cursores explicitos combinados con un estructura de bloque.
Base de datos II. Guía 8 1 Facultad: Ingeniería Escuela: Computación Asignatura: Base de datos II Tema: Cursores Objetivo Conocer la definición y utilización de los cursores Materiales Oracle 12 c Guía
Más detallesConcepto de vista. (con ciertas limitaciones). nivel físico) Una vista es una tabla virtual (no tiene una correspondencia a
2.6.1.- Concepto de vista. Una vista es una tabla derivada de otras tablas (básicas o virtuales). Una vista se caracteriza porque: Se considera que forma parte del esquema externo. Una vista es una tabla
Más detallesPráctica Consultas SQL DML
Práctica Consultas SQL DML Grupo de Ingeniería del Software y Bases de Datos Departamento de Lenguajes y Sistemas Informáticos Universidad de Sevilla noviembre 2012 Objetivos Objetivos de la práctica Crear
Más detallesTipos de datos en SQL. SQL. DDL (Data Definition Language) CREATE DOMAIN CREATE TABLE CREATE TABLE. CREATE TABLE con restricciones de atributo
SQL. DDL (Data Definition Language) BASES DE DATOS (I.T.I. Gestión) Tipo boolean character Bit Numéricos Tipos de datos en SQL Declaración estándar Declaración en ORACLE BOOLEAN CHAR (longitud) char(longitud),
Más detallesLenguaje SQL (2ª Parte) Definición de datos
Lenguaje SQL (2ª Parte) Definición de datos Bases de Datos Práctica 3 DSIC - UPV Facultad de Informática Escuela Técnica Superior de Informática Aplicada Objetivos Sintaxis del Lenguaje de Definición de
Más detallesExamen de Bases de datos Grado de Ingeniería en Informática 3 de septiembre, 2015
Nombre: Examen de Bases de datos Grado de Ingeniería en Informática 3 de septiembre, 2015 1 (3 puntos Un parque de atracciones desea implementar una base de datos relacional que cumpla los siguientes requisitos:
Más detallesSQL: Vistas, Triggers, y Procedimientos Almacenados
SQL: Vistas, Triggers, y Procedimientos Almacenados Dr. Gerardo Rossel Bases de Datos 1C 2018 PostgreSQL Aclaración En estas diapositivas nos basaremos principalmente en PostgreSQL. Diferentes motores
Más detallesSolución Ejercicio Prac. 3b (Esquema).
Solución Ejercicio Prac. 3b (Esquema). LIBRO(codlib, título, autores, temática, totalpres) CP= {codlib} VNN= {título} PRÉSTAMO(codlib, codsoc, fechapres, fechadev) CP= {codlib, fechapres} VNN= {codsoc}
Más detallesDR/UC. DR/UC FACTURA(CIF, N_Factura, Fecha, Total) ASIGNATURA(Cod_Asignatura, Titulación, Nombre_Asig, Curso, Empresa_fotocopias, precio_fotocopia)
GRAFO RELACIONAL EMPRESA(CIF, Nombre, Calle, Número, Población FACTURA(CIF, N_Factura, Fecha, Total ASIGNATURA(Cod_Asignatura, Titulación, Nombre_Asig, Curso, Empresa_fotocopias, precio_fotocopia MATRICULADO(Cod_Asignatura,
Más detallesPráctica 3: Lenguaje SQL 2ª Parte: Definición de datos. Objetivos
Práctica 3: Lenguaje SQL 2ª Parte: Definición de datos Objetivos Presentar la sintaxis de creación de tablas Diferencia con SQL/92 Presentar la sintaxis de la modificación de definición de una tabla Presentar
Más detallesPRÁCTICA T2. El lenguaje procedural PL/SQL de Oracle
3º Ingeniero Técnico en Informática de Sistemas Asignatura: Fundamentos de Bases de Datos Curso: 2007/8 PRÁCTICA T2. El lenguaje procedural PL/SQL de Oracle Objetivos Conocer los conceptos y estructuras
Más detallesAccess SQL: DDL y DML. Una empresa de Ingeniería precisa una base de datos para la gestión de sus proyectos.
SGBD y SQL Access SQL: DDL y DML Ejercicio Una empresa de Ingeniería precisa una base de datos para la gestión de sus proyectos. Necesita almacenar información acerca de sus empleados y los proyectos en
Más detallesDISPARADORES EN SQL DISPARADORES EN SQL:1999 SINTAXIS GENERAL DE UN DISPARADOR EN SQL:1999 SINTAXIS GENERAL DE UN DISPARADOR EN SQL:1999
DISPARADORES EN SQL:1999 DISPARADORES EN SQL Modelos Avanzados de Bases de Datos Un (trigger) es un procedimiento especial que se ejecuta en respuesta a un evento específico. Ej. Al aumentar el sueldo
Más detallesUnidad III. Bases de Datos
Clase:11 1 Unidad III Bases de Datos 2 SQL. Comandos de DDL. Comandos de DML. Agenda 3 SQL Structured Query Language SQL Los comandos del SQL pueden dividirse en tres grupos: Comandos de definición de
Más detallesGuía de ejercicios de SQL Prof. Mauricio E. Fernández N. Semestre Agosto-Diciembre de 2012
Guía de ejercicios de SQL Prof. Mauricio E. Fernández N. Semestre Agosto-Diciembre de 2012 Problema Enunciado: Sean las siguientes tablas de una base de datos Empleado (ndiemp, nomemp, sexemp, fecnac,
Más detallesMATERIAL SOBRE SENTENCIAS SQL
MATERIAL SOBRE SENTENCIAS SQL Retomado este esquema Relacional obtenido en el ejemplo de normalización): EDITOR Editor_Nombre, Editor_Direccion, Editor_Telefono ) LIBRO Libro_ID, Titulo, Editor_Nombre
Más detallesTema II: El modelo relacional de datos. (2.7) Automatización
Tema II: El modelo relacional de datos. (2.7) El modelo relacional de datos. 2.5 El lenguaje standard SQL 2.5.1 Lenguaje de definición de datos DDL. 2.5.2 Lenguaje de manipulación de datos DML. 2.6 Información
Más detallesTriggers (o disparadores) Definición y sintaxis
Triggers (o disparadores) Definición y sintaxis Son bloques PL/SQL almacenados asociados a una tabla que se ejecutan o disparan automáticamente cuando se producen ciertos eventos sobre la tabla (inserción,
Más detallesBases de Datos Relacionales y SQL: Una Introducción
1 Bases de Datos Relacionales y SQL: Una Introducción Protein Design Group, CNB CSIC 2 Sumario Qué es un SGBDR? Usuarios de base de datos Tablas: creación y definición de restricciones Manipulación de
Más detallesChecks, Triggers y Excepciones en InterBase: validando desde la base de datos
Checks, Triggers y Excepciones en InterBase: validando desde la base de datos Por Alfonso Ricaño Bringas InterBase nos permite validar los valores que ingresan a los campos, mediante las restricciones
Más detallesExamen de Bases de datos Grado de Ingeniería en Informática, Febrero, 2015
Examen de Bases de datos Grado de Ingeniería en Informática, Febrero, 2015 1) (3 puntos) El museo de la ciudad necesita gestionar las visitas guiadas de grupos y para ello se debe implementar una base
Más detallesGUÍA DE TRABAJO N 5 GRADO 11 Programación y Diseño de Articulación SENA Software Ing. Néstor Raúl Suarez Perpiñan Página 1 de 6
Página 1 de 6 GUIA N 5 LINEA DE COMANDOS MYSQL I. CREAR, SELECCIONAR, VISUALIZAR 1. CREAR BASE DE DATOS CREATE DATABASE Nombre_Base_Datos; 2. VER LISTADO DE BASES DE DATOS SHOW DATABASES; 3. USAR UNA BASE
Más detalles//Sección de manejo de excepciones. Las rutinas de manejo de errores //aparecen aqui
PL/SQL - Oracle PL/SQL (Procedural Language/SQL) es una extensión de SQL, que agrega ciertas construcciones propias de lenguajes procedimentales, obteniendose como resultado un lenguaje estructural mas
Más detallesLo primero que se llevó a cabo fue la creación del entorno. Esto se llevó a cabo por medio de un usuario con privilegios DBA:
3UiFWLFD364 3DVRV,QLFLDOHV&UHDFLyQGHO(QWRUQR Lo primero que se llevó a cabo fue la creación del entorno. Esto se llevó a cabo por medio de un usuario con privilegios DBA: &UHDFLyQGHOD7$%(63$&(868$5,26
Más detallesGUÍA DE TRABAJO N 7 GRADO 11. Ing. Néstor Raúl Suarez Perpiñan Página 1 de 6 GUIA N 7 COMANDOS MYSQL II. CREAR UNA TABLA
Página 1 de 6 GUIA N 7 COMANDOS MYSQL I. CREAR, SELECCIONAR, VISUALIZAR 1. CREAR BASE DE DATOS CREATE DATABASE Nombre_Base_Datos; 2. VER LISTADO DE BASES DE DATOS SHOW DATABASES; 3. USAR UNA BASE DE DATOS
Más detalles5.1 Procedimientos y Funciones Almacenados. 5.2 Disparadores (Triggers).
Unidad 5 SQL Procedural 5.1 Procedimientos y Funciones. 5.2 Disparadores (Triggers). Taller Bases de Datos ISC Ing. Felipe Alanís González -ITD- 1 MySQL 1. Se usará la Base de Datos llamada LaConsentida.
Más detallesFunciones, procedimientos y cursores en Oracle
Funciones, procedimientos y cursores en Oracle Grupo de Ingeniería del Software y Bases de Datos Departamento de Lenguajes y Sistemas Informáticos Universidad de Sevilla Noviembre 2013 Funciones, procedimientos,
Más detallesRefactorización en Base de Datos. mayo de 2008
Refactorización en Base de Datos mayo de 2008 Refactorización en Bases de Datos Un cambio en el esquema de BD para mejorar su diseño manteniendo su semántica y comportamiento. Refactorizar aspectos estructurales:
Más detallesÍNDICE. Introducción... Capítulo 1. Características, instalación, inicio y entorno de trabajo... 1
ÍNDICE Introducción... XI Capítulo 1. Características, instalación, inicio y entorno de trabajo... 1 Características y novedades de Access 2010... 1 Comienzo rápido del trabajo y seguimiento de la información...
Más detallesELEMENTOS DE BASES. Restricciones de dominio. Mecanismos de integridad. SQL Restricciones en el esquema de relación. Integridad de Entidad
Dpto. Ciencias e Ingeniería de la Computación Universidad Nacional del Sur ELEMENTOS DE BASES DE DATOS Segundo Cuatrimestre 2013 Clase 7: Modelo Relacional Restricciones de Integridad en el Modelo de Datos
Más detallesLa sintaxis de un trigger a nivel de registro es:
9.2.2 CREACION DE TRIGGERS ROW Como ya hemos dicho, los triggers 'row' se ejecutan una vez para cada registro afectado por la sentencia DML que lo disparó. Es decir: si realizamos un UPDATE de varios registros,
Más detallesProcedimientos almacenados en PL/SQL. Jonathan Medina Gómez Facultad de Ingeniería Universidad de Antioquia
Procedimientos almacenados en PL/SQL Jonathan Medina Gómez Facultad de Ingeniería Universidad de Antioquia Ventajas... Los bloques se pueden almacenar en forma permanente mediante subprogramas (funciones
Más detallesPL/SQL. - La unidad de programación utilizada por PL/SQL es el bloque. - Todos los programas de PL/SQL están conformados por bloques.
PL/SQL - Disponible en http://www.lsi.us.es/docencia/get.php?id=5784 - Bibliografía:.Principios de Bases de Datos. Serrano, Sara Lana, Madrid E.U.I.T de Telecomunicación..Gestión de Bases de Datos. Framiñan
Más detallesGUIA DE TRIGGERS (Disparadores) EN MYSQL
GUIA DE TRIGGERS (Disparadores) EN MYSQL Conceptos, historia y contexto A partir de MySQL 5.0.2 se incorporó el soporte básico para disparadores (triggers). Un disparador es un objeto con nombre dentro
Más detallesBases de Datos Curso Grado en Ingeniería del Software Examen Junio. Nombre:
Bases de Datos Curso 2015-2016 Grado en Ingeniería del Software Examen Junio Nombre: Se debe entregar esta hoja 1) (4 puntos) A partir de la información sobre la BD que se describe más abajo, se pide:
Más detallesA. Introducción. B. Los DATABASES TRIGGERS. PL/SQL en objetos de la base de datos. Oracle 11g - SQL, PL/SQL, SQL*Plus 271
PL/SQL en objetos de la base de datos A. Introducción Además de los bloques PL/SQL anónimos utilizados por SQL*PLus o por las herramientas de desarrollo (Oracle*FORMS, Oracle*Reports), se puede emplear
Más detallesUnidad 6. Procedimientos Almacenados y Disparadores
Unidad 6 Procedimientos Almacenados y Disparadores Disparadores (Triggers) Características Los disparadores solo ocurren cuando se presentan determinados eventos Los tipos de eventos permitidos suelen
Más detallesÍNDICE PRIMERA PARTE... 17
ÍNDICE PREFACIO... xv PRIMERA PARTE... 17 CAPÍTULO 1. BASES DE DATOS... 19 BASE DE DATOS RELACIONAL... 20 ESTRUCTURA MÍNIMA DE ALMACENAMIENTO... 21 EJEMPLO DE TABLA... 22 RESUMEN... 23 CAPÍTULO 2. CONSULTAS
Más detallesDiseño de bases de datos
Departamento de Lenguajes y Sistemas Informáticos E.T.S. Ingeniería Informática. Universidad de Sevilla Avda Reina Mercedes s/n. 41012 Sevilla Tlf/Fax 954 557 139 E-mail lsi@lsi.us.es Web www.lsi.us.es
Más detallesDiseño de bases de datos
Departamento de Lenguajes y Sistemas Informáticos E.T.S. Ingeniería Informática. Universidad de Sevilla Avda Reina Mercedes sn. 41012 Sevilla TlfFax 954 557 139 E-mail lsi@lsi.us.es Web www.lsi.us.es Diseño
Más detallesProcedimientos, Funciones, Trigger y Cursores en ORACLE
Procedimientos, Funciones, Trigger y Cursores en ORACLE PROCEDIMIENTOS ALMACENADOS Un procedimiento almacenado es un conjunto de instrucciones en PL/SQL, que pueden ser llamados usando el nombre que se
Más detallesSolució Exercici Prac. 3b (Esquema).
Solució Exercici Prac. 3b (Esquema). LIBRO(codlib, título, autores, temática, totalpres) CP= {codlib} VNN= {título} PRÉSTAMO(codlib, codsoc, fechapres, fechadev) CP= {codlib, fechapres} VNN= {codsoc} CAj=
Más detalles2.6.2.- Aplicaciones de las vistas. 2.6.1.- Concepto de vista. 2.6.3.- Vistas en SQL. 2.6.3.- Vistas en SQL.
2.6.1.- Concepto de vista. Una vista es una tabla derivada de otras tablas (básicas o virtuales). Una vista se caracteriza porque: Se considera que forma parte del esquema externo. Una vista es una tabla
Más detallesPRÓLOGO... XI CAPÍTULO 1. FUNDAMENTOS DEL LENGUAJE PL/SQL.
ÍNDICE PRÓLOGO... XI CAPÍTULO 1. FUNDAMENTOS DEL LENGUAJE PL/SQL. 1 Introducción... 1 Unidades léxicas... 7 Tipos de datos... 11 Declaración de variables... 15 CAPÍTULO 2. ESTRUCTURAS DE CONTROL 21 Introducción...
Más detallesBASES DE DATOS 2º CURSO E.U.I. / F.I. Práctica 3: El lenguaje SQL. 2ª Parte: Definición de datos 10 DE ABRIL DE 2000
1. El lenguaje SQL del sistema ORACLE8 1.1 Definición de datos. BASES DE DATOS En el sistema ORACLE no existe el concepto de esquema de base de datos tal como aparece en el lenguaje SQL estándar. Asociado
Más detallesBD Activas: Motivación
BD Activas: Motivación Los SGBD convencionales son pasivos. Sólo ejecutan preguntas o transacciones realizadas por los usuarios o por los programas de aplicación. Para representar la semántica del mundo
Más detallesCatedra de Base de Datos
Catedra de Base de Datos Facultad de Ciencias Exactas y Tecnología Universidad Nacional de Tucumán Ciclo Lectivo 2017 Programa Analítico de la Materia Unidad 6: SQL. Transacciones. Procedimientos Almacenados.
Más detallesUn proyecto de IBM llamado Sistem/R construye un prototipo simple llamado SQUARE que después se transformó en SQL.
CONTENIDO: 1. Lenguaje SQL 1. Componentes 2. Comandos 3. Clausulas 4. Operadores lógicos 5. Operadores de comparación 6. Funciones de agregado 2. MYSQL 1. Como entrar a MySQL 2. Comandos generales 3. Sintaxis
Más detallesEjemplo de gestión de datos con SQL
Ejemplo de gestión de datos con SQL 1. Crear la tabla FINCA: 2302010 0010 24 3931411 543 COMERÇ 3456912 0023 12 39411312 120 VIVENDES 1230101 00011 45 39328234 213 INDUSTRIA CREATE TABLE `finca` ( `refcad`
Más detallesPL SQL -Oracle. Índice. Miguel Ángel Manso ETSI en Topografía, Geodesia y Cartografía - UPM. Qué es PL/SQL? Qué permite?
PL SQL -Oracle Miguel Ángel Manso ETSI en Topografía, Geodesia y Cartografía - UPM Índice Qué es PL/SQL? Qué permite? Generalidades: fundamentos, delimitadores, literales, tipos de datos PL/SQL en Oracle
Más detallesGestión de Usuarios en MySQL
Gestión de Usuarios en MySQL Gestión de Usuarios en MySQL Objetivos: Crear cuentas de usuario en MySQL Describir los niveles de privilegios de usuarios en Mysql (Comandos GRANT/REVOKE) Asignar y actualizar
Más detallesEJERCICIO TRABAJADORES.
EJERCICIO TRABAJADORES. Estudiando el funcionamiento resumido de una empresa de servicios obtenemos la tabla Empleados y la tabla Trabajos relacionados según el Diseño Conceptual. 1:N EMPLEADOS (1,N) Realizan
Más detallesExamen de Ficheros y bases de datos ITIS Convocatoria de junio II PARCIAL
Examen de Ficheros y bases de datos ITIS Convocatoria de junio II PARCIAL ) (4,3 puntos) Considérese un fichero secuencial indexado con un índice numérico (con valores entre 0 y 65.535) con duplicados
Más detallesLENGUAJE ESTRUCTURADO DE CONSULTAS SQL (2)
LENGUAJE ESTRUCTURADO DE CONSULTAS SQL (2) N O T A S D E L A M A T E R I A B A S E S D E D A T O S I L I C E N C I A T U R A E N C I E N C I A S D E L A C O M P U T A C I Ó N U N I V E R S I D A D D E
Más detallesTema 1. Bases de datos activas
18 de marzo de 2002 1 1. Introducción 2. El modelo evento-condición-acción Definición y uso de disparadores en Oracle Características de las reglas activas 3. Propiedades de las reglas activas 4. Aplicaciones
Más detallesCreación de Servicios de Bases de Datos Oracle ORACLE ACS
Oficina Técnica para la Gestión y Supervisión de Servicios TIC Creación de Servicios de Bases de Datos Oracle Referencia documento: InfV5_JASAS_Servicios_Oracle_V620.doc Fecha: 16 de diciembre de 2015
Más detallesFormato para prácticas de laboratorio
Formato para prácticas de laboratorio CARRERA PLAN DE ESTUDIO CLAVE IGNATURA NOMBRE DE LA IGNATURA LSC 2009-2 12001 Administración de Bases de Datos PRÁCTICA No. 5 LABORATORIO DE NOMBRE DE LA PRÁCTICA
Más detallesIniciación al trabajo con bases de datos
ESCUELA TÉCNICA SUPERIOR DE INGENIEROS INDUSTRIALES Y DE TELECOMUNICACIÓN UNIVERSIDAD DE CANTABRIA Iniciación al trabajo con bases de datos Eduardo Mora Monte Finalidad de una base de datos Base de Datos:
Más detallesTriggers. Carmen Hernández Triggers y PL/SQL 2
Triggers y PL/SQL Triggers Un trigger (disparador) define una acción que la base de datos siempre debería realizar cuando ocurre algún tipo de acontecimiento que la afecta. Se utilizan para mantener la
Más detallesTema 1. Introducción a MySQL. José Muñoz Jimeno Octubre 2015
Tema 1. Introducción a MySQL José Muñoz Jimeno Octubre 2015 Control de cambios Versión Fecha Comentarios 1.0 21/05/2015 Primera versión para el curso Introducción a la administración de MySQL en el COITCV
Más detalles1. Se usará la Base de Datos llamada. 2. Borrar la tabla CtasBanc anterior y crearla: 5.1 Procedimientos y Funciones Almacenados SQL Server
SQL Server 1. Se usará la Base de Datos llamada LaConsentida. use LaConsentida 2. Borrar la tabla CtasBanc anterior y crearla: create table CtasBanc (IdCuenta int identity primary key, tipo char(10), saldo
Más detallesPermite definir cada relación que pertenece a la base de datos relacional, incluyendo:
TEMA 7.- EL ESTANDAR SQL. El Sublenguaje de Manipulación. El Sublenguaje de Definición. El Sublenguaje de Control. El Sublenguaje Huésped. 1. El Sublenguaje de Manipulación. (Se verá en la clase de problemas)
Más detallesEXAMEN DE BASES DE DATOS 11/06/04 Esquema de trabajo
EXAMEN DE BASES DE DATOS 11/06/04 Esquema de trabajo Cuando haya terminado el cuestionario traslade CUIDADOSAMENTE sus respuestas a la siguiente tabla, de este modo al terminar el examen podrá calcular
Más detallesDISPARADORES EN SQL SINTAXIS GENERAL DE UN DISPARADOR EN SQL:2003
DISPARADORES EN SQL Modelos Avanzados de Bases de Datos Curso 2004/2005 SINTAXIS GENERAL DE UN DISPARADOR EN SQL:2003 CREATE [OR REPLACE] TRIGGER nombre [temporalidad del evento] [granularidad del evento]
Más detallesSQL - DDL y consultas de actualización. José Muñoz Jimeno Febrero 2015
SQL - DDL y consultas de actualización José Muñoz Jimeno Febrero 2015 Control de cambios Versión Fecha Comentarios 1.0 13/02/2015 Primera versión para el curso Introducción a las bases de datos con MySQL
Más detallesEJEMPLOS PRÁCTICOS SQL
EJEMPLOS PRÁCTICOS SQL EJEMPLOS PRÁCTICOS SQL INTEGRIDAD REFERENCIAL DROP SCHEMA IF EXISTS Tablas1; CREATE SCHEMA Tablas1; USE Tablas1; create table Cliente( Dni VARCHAR(10), Nombre VARCHAR(10), Apellido
Más detallesEn este curso se presenta un análisis profundo de la base de datos MySQL para los sistemas operativos Windows y Linux.
DURACION: 300 horas PRECIO: 225 * * Materiales didácticos, titulación y gastos de envio incluidos MODALIDAD: A distancia DESCRIPCION: La metodología comienza con la exposición de las tareas en orden secuencial
Más detallesIntroducción SQL. Ges2ón y Modelación de Datos María Constanza Pabón
Introducción SQL Ges2ón y Modelación de Datos María Constanza Pabón PostgreSQL Es un ORDBMS (object rela2onal database management system) Derivado de Postgres, que fue desarrollado en la Universidad de
Más detallesINTRODUCCIÓN A LAS BASES DE DATOS. L.I Gerardo Benavides Pérez
INTRODUCCIÓN A LAS BASES DE DATOS L.I Gerardo Benavides Pérez SISTEMA GESTOR DE BASE DE DATOS Un sistema gestor de bases de datos (SGBD) consiste en una colección de datos interrelacionados y un conjunto
Más detallesApartado A (3 puntos):
EAMEN DISEÑO DE BASES DE DATOS Y SEGURIDAD DE LA INFORMACIÓN (9 de septiembre de 2008) 2º Parcial Autorizo la publicación de la nota del examen junto a mi número de matrícula tanto en la Web como en los
Más detallesBases de Datos - 2006. SQL - Ejemplos
Bases de Datos - 2006 SQL - Ejemplos Consideramos la siguiente base de datos relacional: persona(dni,primer-nombre,apellido) biblioteca(nombre-biblioteca,calle,número) libro(título,isbn,editorial,edición)
Más detallesUTIM Universidad Tecnológica de Izúcar de Matamoros
UTIM Universidad Tecnológica de Izúcar de Matamoros El gestor de DB por defecto en Android es Lite. SQLite es una base de datos transaccional ligera que ocupa una cantidad muy pequeña de espacio en disco
Más detalles