SlideShare una empresa de Scribd logo
1 de 76
Descargar para leer sin conexión
eesarrollo de
Aplicaciones
Entornos de
Generación y
en
con
CASE
Tercero de Bachillerato Técnico en Comercio y
Administración Especialidad Aplicaciones
Informáticas.
UNIDAD Nº1: INTRODUCCIÓN. VENTAJAS DE LA
BASES DE DATOS.
UTILIZACION DE
Competencia.
Relaciona los modelos de bases de datos más comunes a partir de sus
componentes para realizar el diseño contextual de datos de una empresa de una
manera ágil y precisa.
Importancia y Características de la base de datos.
Desde el inicio de la informática los sistemas han necesitado trabajar con grandes
volúmenes de información, es así que nacieron los sistemas de información
gestionados con lenguajes de programación.
Rápidamente los sistemas se fueron complicando, en donde fue evidente la necesidad
de que en la parte en donde se administre los datos fuese más eficiente y sobre todo
con un control confiable de los datos administrados, es aquí en donde se hacen
presentes los Sistemas Gestores de Bases de Datos (SGBD)
Dato.
Es la información concerniente al mundo real, así por ejemplo: Nombre del
Estudiante, Cedula de Identidad, etc.
Base de Dato.
1. ¿Qué es un sistema de Información?
2. ¿Cuáles son los elementos de un sistema de información?
3. ¿Cuál es el papel que cumple el analista de sistemas?
4. ¿Quiénes son los participantes en el análisis de sistemas de información?
5. Realizar una explicación breve sobre las faces de definición, desarrollo y
mantenimiento en el análisis de los sistemas de información.
6. Nombre los modelos de planificación de ciclo de vida del Software y explique uno
de ellos.
7. Reflexione: ¿Qué es una base de datos?
8. Reflexione: ¿Para qué se aplica una base de Datos?
9. Reflexione: ¿En donde se utilizan las bases de datos?
Conjunto de Datos que están organizados entre sí, estos puede
en procesadores de Texto o en hoja electrónica, y además lo
papel, es decir en un medio no lógico, por ejemplo:
estar almacenados
pueden estar en un
Sistemas de Información.
Están relacionados con archivos planos que gestionan la información, en este tipo de
estructura trabajan programas de desarrollo como: Pascal, C, etc. En la cual si se
utiliza archivos planos, al momento de la modificación de la estructura de datos,
cambiaria además gran parte de código o programas de aplicación que utilice este
código
Sistemas de Base de datos.
Conjunto de datos inter relacionados y organizados de tal forma que pueden ser
administrados por un SGBD.
Mientras un archivo plano solo tiene datos a gestionar, un SGBD gestiona datos y
Meta-Datos, que podría ser restricciones al momento de ingresar un dato, es decir,
al ingresar el sexo de la persona el SGBD solo tiene que permitir Masculino o
Femenino, mas no otro dato, otro meta dato son los Índices, etc.
Sistema de Gestión de Bases de Datos.
Es un Software de apli ación que permite extraer y almacenar información de un
sistema de Bases de Datos, proporcionándolos seguridad, organización,
independencia, integridad y consistencia en los datos, recuperación ante fallos del
sistema, administración de la información.
Analizando todas las ventajas que proporcionan los SGBD, podríamos decir que son
de gran utilidad, pero consideremos, que trabajar con SGBD resultaría costoso y
complejo, es por ello
seguridades altas, etc.,
archivos planos.
que para aplicaciones pequeñas que no requieren se
lo mas conveniente es utilizar sistemas que trabajen con
A finales de los 80 y principios de los 90 se han realizado algunos avances en el
área de los SGBD, y quizás lo más significante, podría decirse la incursión de los
SGBD en la Internet, en la que sistemas como los de Bancos, Instituciones de
Seguridad Social, entre otros, utilizan este sistema.
Modelos de Bases de Datos.
Bases de datos Jerárquicos.
Entre los primeros modelos de datos que surgieron en los SGBD comerciales se
encuentran las estructuras en árbol, propias de los productos jerárquicos.
Los árboles, como instrumentos para la representación de estructuras de datos,
presentan problemas por su poca flexibilidad, lo que da origen a una falta de
adaptación a muchas organizaciones reales.
La implementación del modelo Jerárquico en los productos se ll
punteros; estructura física que varía según los productos, e
va a cabo en base a
incluso un mismo
producto proporciona distintas organizaciones físicas a fin de que el usuario pueda
conseguir una mayor eficiencia en el diseño físico de la base de datos.
Los segmentos, en función de su situación en el árbol y de
pueden denominarse como:
sus características,
1. SEGMENTO PADRE: Es aquél que tiene descendientes, todos ellos localizados en el mismo nivel.
2. SEGMENTO HIJO: Es aquél que depende de un segmento de nivel superior. Todos los hijos de un
mismo padre están en el mismo nivel del árbol.
3. SEGMENTO RAÍZ: El segmento raíz de una base de datos jerárquica es el padre que no
tiene padre. La raíz siempre es única y ocupa el nivel superior del árbol.
Ilustración 1 Modelo Jerárquico.
Bases de Datos de Red.
Es similar a la jerárquica, es decir que poseen registros conectados entre si por medio
de enlaces y cada registro es una colección de campos (atributos), cada uni de los
cuales tiene solamente un valor de un dato y un enlace es una asociación de dos
registros exclusivamente.
Ilustración 2 Modelo de Red
Bases de datos Relacionales.
Este modelo representa los datos y las relaciones entre los datos, mediante un
conjunto de tablas conocidas también como relaciones, cada una de las cuales tiene
un numero de columnas o atributos con nombres únicos, cada uno de los campos
poseen un dato que se identifica un tipo común de datos a almacenar, las tablas tienen
a su vez filas que se conocen como tuplas, que contienen información de un
registro en particular. Cada tabla está asociada habitualmente con otra(s) tablas
como resultado de la relación representada en el diagrama conceptual.
Ilustración 3 Modelo Relacional
Realizar las siguientes actividades:
1. Realizar mediante diferentes fuentes una investigación referente al tema: ¿En que se
relacionalostresmodelosdebasesdedatosenfuncióndelosproblemasoriginadosenla
actualización de los datos?
2. Analizar el contenido investigado.
3. Establecer comparaciones.
4. Elabore cuadros esquemáticos.
5. Presentar el trabajo en plenaria.
Arquitectura de los sistemas.
Ilustración 4 Bosquejo de una arquitectura Centralizada.
Ilustración 5 Bosquejo de una arquitectura Distribuida.
1. Realizar la técnica del diagrama de VENN en la que relacione las ilustraciones 4 y 5
referente a las arquitectura de los sistemas.
Acceso a Sistemas de Bases de Datos.
Para el acceso a los datos desde un SGBD se puede realizar en dos configuraciones:
1. Arquitectura Maestro - Esclavo.
2. Arquitectura Cliente – Servidor.
Arquitectura Maestro - Esclavo.
Es aquel en el cual un PC que está integrada a la red accede al servidor y ejecuta
una aplicación que re osa en el mismo. Este modelo se caracteriza por tener
terminales no-Inteligentes, ya que todas las tareas “Principales” la realiza el servidor
central, esto permite de que como todos los procesos son ejecutados por el servidor,
un tráfico enorme si se considerase una red grande, es por ello que se necesitaría una
maquina potente como servidor para que puedan atender a todos los nodos.
Arquitectura Cliente – Servidor.
Es el cual en que las tareas de una aplicación se dividen ntre computadoras
servidor – cliente a través de la red de computadoras.
En este caso los clientes se instala y ejecuta los programas de aplicación, este
software realiza tareas como verificar que los datos ingresados por el usuario sean
correctos, etc. Y solo envía la petición cuando desee acceder a la información u otra
cosa.
La arquitectura Cliente – Servidor consiste en tres capas lógicas:
1. Capa de Presentación.
2. Capa de Aplicación.
3. Capa de Datos.
Como resultado de esta descomposición se puede tener sistemas de 2-capas, 3-
capas o Multicapas (n-capas).
Ilustración 6 Bosquejo de una arquitectura de 3 capas en una aplicación Web.
UNIDAD 2: DISEÑO DE BASES DE DATOS RELACIONALES.
Competencia.
Diseña diagramas conceptuales y lógicos de los sistemas de in ormación aplicando
las metodologías de diseño con agilidad, orden y pulcritud.
El Diagrama de Entidad - Relación.
El modelo E/R fué propuesto inicialmente por PETER P. CHEN en 1976 y 1977, estos
diagramas hacen énfasis en las relaciones entre los datos. Todos los sistemas
almacenan y usan información acerca del ambiente en el cual interactúan; a veces, esta
información es mínima, pero en la mayoría de los sistemas es bastante compleja. No
solo deseamos conocer en detalle que información hay en cada agregado de datos, sino
que también queremos conocer la relación que existe entre agregados. Este aspecto
del sistema no se resalta en el diagrama de flujo, pero sí aquí.
Este diagrama, también denominado diagrama conceptual con
elementos fundamentales:
ta de los siguientes
Grafico Nombre Grafico Nombre
Entidad Relación
Atributo
Identificador
Entidad.
Es aquel objeto acerca
Datos
del cual queremos almacenar información en la Base de
1. Realizar un esquema conceptual referente a los elementos de las bases de datos
(Dato, base de dato, sistema de base de dato y Sistema de gestión de bases de datos)
2. Mencione tres modelos de bases de datos.
3. Mencione 3 características referentes a las bases de datos relacionales.
4. Mencione 3 ventajas del uso de las bases de datos relacionales
Atributo.
Es una característica de interés o un hecho sobre una entidad o sobre una relación.
Los atributos representan las propiedades básicas de las entidades y de las relaciones.
Gráficamente, se representan mediante bolitas que cuelgan de las entidades o
relaciones a las que pertenecen.
Los atributos también pueden clasificarse en monovalentes o polivalentes. Un atributo
monovalente es aquel que tiene un solo valor para cada ocurrencia de la entidad o
relación a la que pertenece. Un atributo polivalente es aquel que tiene varios valores
para cada ocurrencia de la entidad o relación a la que pertenece.
Identificador.
Un identificador de una entidad es un atributo o conjunto de atributos que determina
de modo único cada ocurrencia de esa entidad.
Toda entidad tiene al menos un identificador y puede tener varios identificadores
alternativos. Las relaciones no tienen identificadores.
Relaciones.
Se representan por medio de rombos en el diagrama y son la serie de conexiones o
asociaciones entre los tipos de objetos que están conectados por la relación por medio
de flechas.
Ilustración 7 Entidades, atributos, identificadores y relación.
Cardinalidad.
De un atributo indica el número mínimo y el número máximo de valores que puede
tomar para cada ocurrencia de la entidad o relación a la que pertenece. El valor por
omisión es (1,1).
Las ocurrencias pueden ser:
1. 1:1 Cuando la relación es de uno a uno
2. 1:n Cuando la relación es de uno a muchos
3. n:m Cuando la relación es de muchos a muchos
Ilustración 8 Obligatoriedad y Cardinalidad (O, C).
1. Expresar las restricciones de cardinalidad para los casossiguientes:
1.1. Los idiomas pueden ser hablados por personas, o no. Las personas tienen que
hablar al menos un idioma.
1.2. Todo barco debe tener un capitán y sólo uno. Un capitán puede estar asignado
como máximo a un barco.
1.3. Todo alumno debe estar matriculado como mínimo de una asignatura.
1.4. Un río no puede desembocar en más de un mar.
1.5. Una persona puede tener o no hijos.
1.6. Un cliente puede comprar muchos productos.
1.7. En una factura se detallan muchos productos y también el producto se pueden
detallar en muchas facturas.
1.8. Un cliente se registra en muchas facturas y en la misma se registra un solo
cliente.
1.9. Muchos productos son vendidos por un proveedor.
1.10. Un producto posee muchas marcas.
1.11. Un padre de familia matricula a muchos hijos.
1.12. A muchos estudiantes se califica muchas materias.
1.13. A cada materia se le califica muchos parámetros.
1.14. Muchos estudiantes poseen un representante.
Metodología de diseño conceptual
El primer paso en el diseño de una base de datos es la producción del esquema
conceptual. Normalmente, se construyen varios esquemas conceptuales, cada uno
para representar las distintas visiones que los usuarios tienen de la información. Cada
una de estas visiones suelen corresponder a las diferentes áreas funcionales de la
empresa como, por ejemplo, producción, ventas, recursos humanos, etc.
Estas visiones de la información, denominadas vistas, se pueden identificar de varias
formas. Una opción consiste en examinar los diagramas de flujo de datos, que se
pueden haber producido previamente, para identificar cada una de las áreas
funcionales. La otra opción consiste en entrevistar a los usuarios, examinar los
procedimientos, los informes y los formularios, y también observar el funcionamiento
de la empresa.
A los esquemas conceptuales correspondientes a cada vista de usuario se les denomina
esquemas conceptuales locales. Cada uno de estos esquemas se compone de
entidades, relaciones, atributos, dominios de atributos e identificadores. El esquema
conceptual también tendrá una documentación, que se irá produciendo durante su
desarrollo. Las tareas a realizar en el diseño conceptual son las siguientes:
1. Identificar lasentidades.
2. Identificar lasrelaciones.
3. Identificar los atributos y asociarlos a entidades y relaciones.
4. Determinar los dominios de los atributos.
5. Determinar los identificadores.
6. Dibujar el diagrama entidad-relación.
7. Revisar el esquema conceptual local con el usuario.
Metodología del diseño lógico de datos.
A partir de un esquema conceptual obtenemos una especificación lógica de la base de
dato, tablas y columnas en el modelo relacional.
Las entidades se transforman en tablas, que es la estructura primaria de las bases de
datos relacionales, y, Los atributos de las entidades pasan a ser columnas de las tablas.
El (los) atributo que sirve de identificador de una entidad pasa a ser la clave primaria
(que es la que permite identificar a cada registro de manera única en la tabla) en cada
tabla.
La relación entre las entidades se la representa adicionando una columna, o mas de
una dependiendo del caso, en una de las tablas redundantes se las denomina clave
foránea, que es la que permite relacionar los registros entre tablas, y a su vez es la clave
primaria de la tabla(s) relacionada.
Un esquema lógico es una representación lingüística del esquema conceptual como
resultado del diagrama entidad relación, el que es representado por una serie de
nombres, el de la tabla y el de las columnas. El nombre de la tabla (entidad) se la
representa con letras mayúsculas y después entre paréntesis las columnas (atributos)
separadas por comas (,). La clave primaria (identificador) se representa subrayando
la columna(s), y la clave foránea subrayando la columna(s) correspondiente con línea
discontinua.
Diseño lógico en relaciones binarias de muchos a muchos.
Diseño lógico en relaciones binarias de uno a muchos o muchos a uno.
Diseño lógico en relaciones binarias de uno a uno.
1. Elabore un cuadro de secuencia referente a las metodologías del diseño conceptual y
diseño lógico.
Ejercicio resuelto de DER.
El almacén de alquiler de películas MOVIES necesita de un sistema informático,
para ello su gerente explica sus requisitos:
Un video se identifica por su titulo y categoría y sus actores, de este existe muchas
copias para que sean alquiladas por uno o varios clientes, cuando este se acerca a
realizar el alquiler, se le solicita su cedula como prenda, poste iormente se apunta sus
nombres, apellidos, dirección y teléfono.
Para cada video existen muchos actores, de las cuales se
Nombre, edad y nacionalidad.
Diagrama Conceptual.
Diseño lógico.
desea registrar su
1. Complete el siguiente problema sus atributos y su diseño lógico.
NEW FASHION BOUTIQUE es el nombre de una micro-empresa que se dedica al
diseño, manufactura, venta y comercialización de ropa femenina diseñada para
clientes exclusivos, la forma en que NEW FASHION BOUTIQUE lleva a cabo sus
actividadestransaccionales, esta detallada de lasiguiente manera:
La dueña de la Boutique realiza la compra de materiales (cierres, hilos, pellón,
botones, entre otros), así también materiales que proporcionan mantenimiento a
las maquinas (aceite, agujas, etc.).
La ropa se confecciona utilizando telas que algunas son proporcionados por los
clientes y otras son vendidas por la misma Boutique, desde luego el cliente indica la
fecha de entrega del producto final.
El proceso de automatización del presente sistema es para el control de las ventas,
productos, proveedores y clientes
2. A partir del siguiente enunciado se desea realiza, con la ayuda del docente el
modelo (Diagrama)entidad-relación.
2.1. “Una empresa vende productos a varios clientes. Se necesita conocer
los datos personales de los clientes (nombre, apellidos, dni, dirección y fecha
denacimiento).Cadaproducto tiene un nombre y un código, así como un
precio unitario. Un cliente puedecomprar varios productos a la empresa,
y un mismo producto puede ser comprado por varios clientes.
Los productos son suministrados por diferentes proveedores. Se debe
tener en cuenta que un producto sólo puede ser suministrado por un
proveedor,yqueunproveedorpuedesuministrardiferentesproductos.De
cada proveedor se desea conocer el NIF, nombre y dirección”.
2.2. “Se desea diseñar la base de datos de un Instituto. En la base de datos se
desea guardar los datos de los profesores del Instituto (DNI, nombre,
dirección y teléfono). Los profesores imparten módulos, y cada módulo tiene
un código y un nombre. Cada alumno está matriculado en uno o varios
módulos. De cada alumno se desea guardar el nº deexpediente, nombre,
apellidos y fecha de nacimiento. Los profesores pueden impartir varios
módulos, pero un módulo sólo puede ser impartido por un profesor. Cada
curso tiene un grupo de alumnos, uno de los cuales es el delegado del
grupo”.
2.3. “La clínica “SAN PATRÁS” necesita llevar un control informatizado de su
gestión de pacientes ymédicos.
De cada paciente se desea guardar el código, nombre, apellidos,
dirección, población,provincia,códigopostal,teléfonoyfechadenacimiento.
De cada médico se desea guardar el código, nombre, apellidos, teléfono y
especialidad. Se desea llevar el control de cada uno de los ingresos que el
paciente hace en el hospital. Cada ingreso que realiza el paciente queda
registrado en la base de datos. De cada ingreso se guarda el código de
ingreso (que se incrementará automáticamente cada vez que el paciente
realice un ingreso), el número de habitación y cama en la que el paciente
realiza el ingreso y la fecha de ingreso. Un médico puede atender varios
ingresos,peroelingresodeunpacientesolopuedeseratendidoporunúnico
médico.Unpacientepuede realizarvariosingresosenel hospital”.
3. A partir del siguiente enunciado realizar en grupo de tres el modelo (Diagrama)
entidad-relación.
3.1. Una empresa desea diseñar una base de datos para almacenar en ella
toda lainformacióngeneradaencadaunodelosproyectosqueéstarealiza.
“De cada uno de los proyectos realizados interesa almacenar el código,
descripción, cuantía del proyecto, fecha de inicio y fecha de fin. Los
proyectos son realizados por clientes de los que se desea guardar el
código, teléfono, domicilio y razón social. Unclientepuederealizarvarios
proyectos, peroun solo proyecto esrealizado por un único cliente.
Enlosproyectosparticipancolaboradoresdelosquesedisponelasiguiente
información:nif, nombre, domicilio, teléfono, banco y número de cuenta.
Un colaborador puede participar en varios proyectos. Los proyectos son
realizadosporunoomáscolaboradores.Los colaboradores de los proyectos
reciben pagos. De los pagos realizados se quiere guardar el número de
pago, concepto, cantidad y fecha de pago. También interesaalmacenarlos
diferentestiposde pagos quepuederealizarlaempresa.Decadaunodelos
tipos de pagos se desea guardar el código y descripción. Un tipo de pago
puede pertenecer a varios pagos”.
UNIDAD N° 3: OPTIMIZACIÓN DE LAS BASES DE DATOS RELACIONALES.
Competencia.
Optimiza el diseño de las bases de datos aplicando las reglas de normalización de
una manera ágil y precisa.
1. Preparar informe investigativo de tres personas referente a la herramienta POWER
DESIGNER, considerando los siguientes temas:
1.1. Empresa creadora.
1.2. Funciones.
1.3. Requerimientos de Hardware y Software.
1.4. Pantallas.
1.5. Barras de herramientas.
1.6. Conclusiones.
Se calificará Informe, defensa y diapositivas.
2. Realizar un panel sobre el tema “Características, manejo y bondades del programa
POWER DESIGNER”. Para el desarrollo del mismo seguir la siguiente secuencia:
a. Haber investigado de diferentes fuentes.
b. Presentar a los miembros del panel.
c. Formular preguntas por cada estudiante.
d. Responder a la pregunta planteada por uno de los integrantes.
e. Continuar el dialogo
f. Plantear otras preguntas pos parte del coordinador.
¿Qué es el modelo relacional?
Grafique y nombre los símbolos usados en el diagrama entidad relación.
Explique sobre el uso de cardinalidad y obligatoriedad en el modelo relacional.
Mencione los 7 pasos para realizar un correcto diagrama entidad-relación.
¿En qué consiste el diseño lógico?
Realizar el diseño lógico del siguiente diagrama Entidad relación
7. Graficar el Diagrama Entidad Relación del siguiente esquema lógico.
g. Resumir brevemente el contenido expuesto.
h. Sintetizar las exposiciones por parte del coordinador.
i. Establecer un diálogo con loe estudiantes.
j. Analizar el contenido investigado.
Teoría de la Normalización.
Cuando se diseña una base de datos mediante el modelo relacional, al igual que ocurre
en otros modelos de datos, tenemos distintas alternativas, es decir, podemos obtener
diferentes esquemas relacionales y no todos son equivalentes, ya que algunos van a
representar la realidad mejor que otros.
Es necesario conocer qué propiedades debe tener un esquema relacional para
representar adecuadamente una realidad y cuáles son los problemas que se pueden
derivar de un diseño inadecuado.
La teoría de la Normalización es un método objetivo y riguroso que se aplica en el
diseño de bases de datos relacionales.
Algunos problemas que se pueden presentar son:
• Incapacidad para almacenar ciertos hechos
• Redundancias y por tanto, posibilidad de incoherencias
• Ambigüedades
• Pérdida de información (aparición de tuplas espúreas)
• Pérdida de dependencias funcionales, es decir, ciertas restricciones de integridad que dan
lugar a interdependencias entre los datos.
• Aparición en la BD de estados no válidos, es decir, anomalías de inserción, borrado y
modificación.
En conclusión el esquema relacional obtenido debe ser analizado para comprobar que
no presenta los problemas anteriores.
Analicemos la siguiente relación: ESCRIBE
AUTOR NACIONALIDAD COD_LIBRO TITULO EDITORIAL AÑO
Date, C. Norteamericana 98987 Database Addison 1990
Date, C. Norteamericana 97777 SQL Stan Addison, W. 1986
Date, C. Norteamericana 98987 Guide for Addison, W. 1988
Codd,E. Norteamericana 7890 Relational Addison,W. 1990
Gardarin Francesa 12345 Basi Dati Paraninfo 1986
Gardarin Francesa 67890 Comp BD Eyrolles 1984
Valduriez Francesa 67890 Comp BD Eyrolles 1984
Kim,W. Norteamericana 11223 BD OO ACM 1989
Lochovsky Canadiense 11223 BD OO ACM 1989
Esta relación almacena datos de autores y de libros.
Algunos problemas son:
• Redundancia, ya que la nacionalidad del autor se repite por cada ocurrencia del mismo. Lo
mismo sucede cuando un libro tiene mas de un autor, se repite la editorial y el año de
publicación.
• Anomalías de modificación, es fácil cambiar el nombre de una editorial en una tupla sin
modificar el resto de las que corresponden al mismo libro, lo que da lugar a incoherencias.
• Anomalías de inserción, ya que si queremos ingresar información de algún autor, del que no
hubiera ningún libro en la base datos, no sería posible, ya que cod_libro es parte de la clave
primaria de la relación (regla de integridad de la entidad). La inserción de un libro, que tiene
dos autores obliga a insertar dos tuplas en la relación.
• Anomalías de borrado, ya que si queremos eliminar un cierto libro, deberíamos perder los datos
de su autor y viceversa.
En los casos anteriores, se deja en manos del usuario manejar la integridad de la base
de datos.
Lo anterior sucede pues no se cumple un hecho básico de todo diseño:
"Hechos distintos, deben almacenarse en objetos distintos"
Una forma de evitar este tipo de problemas consiste en seguir la metodología
propuesta en el curso, es decir, un riguroso diseño conceptual y un traspaso de éste
al modelo relacional.
Sin embargo, ante posibles dudas respecto a si un esquema relacional está correcto,
aplicaremos a dicho esquema un método formal de análisis, que permita analizar
errores y generar esquemas correctos. Esta es la teoría de la normalización.
En el ejemplo anterior, el conjunto de las siguientes relaciones no presenta estos
problemas:
LIBRO( cod_libro, titulo, editorial, año )
AUTOR( nombre, nacionalidad )
ESCRIBE( cod_libro, nombre )
La normalización introduce una técnica formal para diseñar bases de datos
relacionales, y permite mecanizar parte del proceso al disponer de algoritmos de
normalización.
Una observación importante, es que las anomalías antes descritas se producen en
procesos de actualización y no en procesos de consulta. La normalización penaliza las
consultas, al disminuir la eficiencia, ya que la normalización aumenta el nro. de
relaciones presentes en la base de datos, por lo que una determinada consulta puede
llevar consigo el acceso a varias tablas, lo que aumenta el costo de ésta.
Tablas normalizadas:
Libro
Cod_libro Titulo Editorial Año
1 Database Addison 1990
2 SQL Stan Addison, W. 1986
3 Guide for Addison, W. 1988
4 Relational Addison,W. 1990
5 Basi Dati Paraninfo 1986
6 Comp BD Eyrolles 1984
7 Comp BD Eyrolles 1984
8 BD OO ACM 1989
Autor
Nombre Nacionalidad
Date, C. Norteamericana
Codd,E. Norteamericana
Gardarin Francesa
Valduriez Francesa
Kim,W. Norteamericana
Lochovsky Canadiense
Escribe
Cod_libro Nombre
1 Date, C.
2 Date, C.
3 Date, C.
4 Codd,E.
5 Gardarin
6 Gardarin
7 Valduriez
8 Kim,W.
9 Lochovsky
La normalización tiene como objetivo obtener esquemas relacionales que cumplan
determinadas condiciones, a través de las formas normales:
• Primera, segunda y tercera formas normales (1FN, 2FN, 3FN). – Codd 19701
• Forma normal de Boyce y Codd (FNBC). – Boyce – Codd 1974
• Cuarta Forma Normal. (4FN). – Fagin 1977
• Quinta Forma Normal. (5FN). – Fagin 1979
7. Investigar sobre la 4FN y 5FN.
Primera Forma Normal (1FN).
Fue introducida por Codd, en su primer trabajo. Es una restricción inherente al
modelo relacional por lo que su cumplimiento es obligato io. Consiste en la
prohibición de que en una relación existan grupos repetitivos, es decir, un atributo
no puede tomar más de un valor del dominio subyacente.
Segunda Forma Normal (2FN).
Fue introducida por Codd. Una relación está en 2FN, si además de estar en 1FN,
todos los atributos que
información acerca de
no forman parte de ninguna clave ca
la clave completa, es decir que, cada
didata suministran
atributo no-clave es
total y funcionalmente dependiente de TODA la clave primaria.
1 Como obligatoriedad del currículo, en este modulo se estudiara las formas normales 1FN,
2FN Y 3FN.
Ejemplo usando 1FN y 2FN.
A partir del diseño lógico, para la relación:
PRESTAMO (num_socio, nombre_socio, cod_libro, fec_prest, editorial, país )
Las claves candidatas son:
(num_socio, cod_libro) y (nombre_socio, cod_libro)
Por lo tanto seleccionamos la primera opción: num_socio y cod_libro
Se puede observar que ciertos atributos que no forman parte de las claves candidatas,
tal como editorial, constituye información acerca del libro, pero no acerca de la clave
completa (del socio también). Luego, la relación préstamo no se encuentra en 2FN.
La solución es descomponer esta relación en las siguientes:
Enunciado:
PRESTAMO (num_socio, nombre_socio, cod_libro, fec_prest, editorial, país )
Optimizada a:
PRESTAMO1( num_socio, cod_libro, nombre_socio, fec_prest )
LIBRO( cod_libro, editorial, país )
En la relación PRESTAMO1, los atributos que no forma parte de las claves candidatas
es fec_prest y nombre_socio, suministra información acerca de la clave, pero
nombre_socio es únicamente dependiente de num_socio y no de cod_libro, es decir
que nombre_socio no depende TOTALMENTE de la clave primaria. Por loque no está
en 2FN. Entonces la relación PRESTAMO1 quedaría así:
SOCIO (num_socio, nombre_socio)
PRESTAMO1 ( num_socio, cod_libro, fec_prest )
La relación LIBRO, la clave es cod_libro, y los dos atributos: editorial y país
suministran información de la clave completa. Por lo tanto, está en 2FN.
En fin, las tablas quedarían optimizadas en 1FN y 2FN así:
SOCIO (num_socio, nombre_socio)
LIBRO ( cod_libro, editorial, país )
PRESTAMO1 ( num_socio, cod_libro, fec_prest )
Tercera Forma Normal (3FN).
Propuesta por Codd. Una relación está en 3FN, si además de estar en 2FN, los
atributos que no forman parte de ninguna clave candidata facilitan información sólo
acerca de la(s) clave(s) y no acerca de otros atributos, es decir que ningún
atributo no-clave de l
atributo no-clave.
relación es funcionalmente dependiente de algún otro
Ejemplo usando 3FN.
De las siguientes tablas optimizadas anteriormente a 1FN y 2FN:
SOCIO(num_socio, nombre_socio)
LIBRO( cod_libro, editorial, país )
PRESTAMO1( num_socio, cod_libro, fec_prest )
La relación PRESTAMO1 y LIBRO, contienen una sola column
está en 3FN.
no-clave por tanto
En la relación LIBRO, el atributo país entrega información acerca de la editorial que
publica el libro, es decir, que país depende de la columna no-clave editorial por lo que
no está en 3FN.
La solución es descomponerla en:
EDITORIAL( editorial, país ),
LIBRO1( cod_libro, editorial )
Que están en 3FN, ya que todo atributo no clave facilita información acerca de la
Hasta ahora nuestro relaciones en 3FN: esquema relacional
está compuesto por las siguientes
SOCIO(num_socio, nombre_socio)
EDITORIAL( editorial, país ),
LIBRO1( cod_libro, editorial )
PRESTAMO1( num_socio, cod_libro, fec_prest )
Ejemplo completo usando las 3 normalizaciones.
Ilustración 10 Datos a analizar la normalización
1FN.
Ilustración 11 Area en donde no cumple la 1FN
Ilustración 12 Resultado de 1FN a partir de la tabla inicial
2FN.
Ilustración 13 Tabla que cumple la 2FN
Ilustración 14 Tabla que no cumple la 2FN
Ilustración 15 Resultado de realizar la 2FN
3FN.
Ilustración 16 Tablas que cumplen la 3FN
Ilustración 17 Tabla que no cumple la 3FN.
Ilustración 18 Tabla normalizada a 3FN.
Resultado final:
Ilustración 19 Tabla inicial no normalizada.
Ilustración 20 Resultado de aplicar la normalización.
1. Realizar con el docente el diseño lógico y verificar su normalización (1FN,
2FN y 3FN) del siguiente diseño conceptual:
2. Con la ayuda del docente, realizar el diseño lógico
siguiente cuadro:
y normalización del
3. En grupo de tres, realizar la normalización del siguiente esquema lógico:
FACTURA (Numero_Fact, Fecha, Nombre_cliente, Cedula, cantidad,
Cod_producto, detalle. Precio, Subtotal)
4. Presentar un informe individual con la ayuda del docente el diseño
conceptual, lógico y normalización del siguiente enunciado:
Consideremos la base de datos de personal de una empresa que tiene un
conjunto de departamentos. Cada departamento tiene un conjunto de
empleados, un conjunto de proyectos y un conjunto de oficinas. Cada
empleado tiene una historia de salarios (El conjunto de salarios que ese
empleado ha recibido ). Cada oficina tiene un conjunto de teléfonos.
La base de datos debe contener la siguiente información:
• Por cada departamento: número de departamento (único ), presupuesto y el
número de empleado del gerente del departamento ( único ).
• Por cada empleado: número de empleado ( único ), número de proyecto en
el que actualmente trabaja, número de oficina y número de teléfono; más la
fecha y salario para cada salario recibido en ese puesto.
• Por cada proyecto: número de proyecto (único) y presupuesto.
• Por cada oficina: número de oficina ( único ), superficie en metros
cuadrados y números ( únicos ) de todos los teléfonos de esa oficina.
Considere las siguientes suposiciones semánticas:
• Ningún empleado es el gerente de más de un departamento a la vez.
• Ningún empleado trabaja en más de un departamento a la vez.
• Ningún empleado trabaja en más de un proyecto a la vez.
• Ningún empleado ocupa en más de una oficina a la vez.
• Ningún empleado tiene más de un teléfono a la vez.
• Ningún proyecto está asignado a más de un departamento a la vez.
• Ninguna oficina está asignada a más de un departamento a la vez.
5. Optimizar el diseño conceptual del ejercicio 3.1 de la actividad intraclase de
la unidad anterior.
UNIDAD N°4: ORGANIZACIÓN DE UN SISTEMA GESTOR DE BASE DE
DATOS RELACIONAL.
Competencia.
Utiliza a partir de un análisis de las necesidades del entorno empresarial un
sistema gestor de bases de datos (SGBD) determinado de una forma precisa.
Sistema de Gestión de Bases de Datos.
Como se menciono anteriormente un Sistema de Gestión de Bases de Datos (SGBD)
es un Software de aplicación que permite extraer y almacenar información de un
sistema de Bases de Datos, proporcionándolos seguridad, organización,
independencia, integridad y consistencia en los datos, recuperación ante fallos del
sistema, administración de la información.
Una de las características de los SGBD es que permite co partir recursos en
diferentes aplicaciones. En un Sistemas de bases de datos, todos los datos se
integran en un único archivo físico o en un conjunto de archivos relacionados.
Cualquier acceso a los datos solicitados por un usuario a través de una interfaz es
ejecutado a través de un SGBD que es el Software que entiende y manipula la
estructura lógica de los datos en el archivo.
A finales de los 80 y principios de los 90 se han realizado algunos avances en el
área de los SGBD, y quizás lo más significante, podría decirse la incursión de los
SGBD en la Internet, en la que sistemas como los de Bancos, Instituciones de
1. ¿Cuáles son las características del modelado de datos?
2. Realiza una investigación referente al diseño lógico de datos de un modelo
relacional y explica sus procedimientos de traspaso de un Diagrama Entidad
– Relación (DER) a Diseño lógico.
3. Investiga y contesta las siguientes preguntas.
a) ¿Qué es Sistemas de Información?
b) ¿Qué son Archivos Planos?
4. ¿Qué es un Sistema de Bases de Datos?
Seguridad Social, entre otros, utilizan este sistema.
1. Investigar en grupo de 3 personas una reseña histórica sobre los SGBD,
considere: Fechas, fabricantes, nombres de los primeros SGBD, sus nuevas
tendencias y evolución de los SGBD a través del tiempo.
Para la exposición del texto expositivo siga las siguientes pautas:
a. Investigar el contenido de diferentes fuentes
b. Analizar el contenido investigado.
c. Seleccionar las ideas principales.
d. Investigar el significado de cada idea
e. Elabore cuadros esquemáticos.
f. Presentar el trabajo en plenaria.
Se calificara informe, defensa y diapositivas.
Ventajas de los SGBD.
Usar SGBD para administrar información posee muchas ventajas:
- Independencia de datos.
- Eficiencia en el acceso a la información.
- Integridad de los datos y su seguridad.
- Acceso concurrente y recuperación ante fallos del sistema.
- Menor tiempo en el desarrollo de aplicaciones.
- Administración de la información, entre otros.
Analizando las ventajas que ofrecen los SGBD, pareciera que siempre se necesite
gestionar la información, y esta seria la opción mas alternativa, sin embargo esta no
es la situación, ya que un SGBD es un software complejo, lo que implica que para
aplicaciones pequeñas
seguridades eficientes,
o en las que no se requiera un control de usuarios,
etc., lo mas racional es optar por otra alternativa, por
ejemplo archivos planos. Otra razón para no utilizar SGBD es cuando se desarrolle
aplicaciones que no sean soportados por lenguajes de consultas.
Estructura de un SGBD.
Los objetos de datos y las relaciones definidas en DER, proporcionan la base para el
diseño de datos. En muchas aplicaciones de software, la arquitectura de datos tendrá
una gran influencia sobre la arquitectura del software que debe procesarlo. Es por ello
que existe muchos SGBD en el mercado, a continuación mostramos algunos de ellos:
Ilustración 21 Oracle 9i.
Ilustración 22 Microsoft SQL Server 2005.
Ilustración 23 Mimer 9.2
Ilustración 24 Microsoft Office Access 2007.
Ilustración 25 MySQL en PhpMyAdmin 2.11.6
Usuarios relacionados con los Sistemas de Bases de Datos.
Los Sistemas de Bases de Datos al estar administrados por los SGBD, están asociados
a una variedad de usuarios, con el objeto de atender la diversidad de tareas que se
requiere para su desarrollo, administración y mantenimiento.
- Usuarios Finales.
- Programadores de Aplicaciones.
- Administradores de sistemas de Bases de Datos.
- Administradores de Redes de comunicaciones.
- Implementadores.
UNIDAD N° 5: LENGUAJE DE CONSULTA ESTRUCTURADO. SQL.
Competencia.
Distingue los componentes del lenguaje de consulta estructurado para aplicar
organizada y eficazmente las formas de implementación de ba
manera correcta y eficaz.
es de datos de una
Reseña histórica del SQL.
Después de que el doctor Edgar Codd de la IBM en junio de 1977 publicara su
artículo “Un modelo relacional de datos para grandes bancos de datos compartidos”
delineando la teoría matemática de cómo la información podría almacenarse en tablas
y manipularlas usando un sub-lenguaje de datos, la investigación dio lugar en los
laboratorios de la IBM en California, EEUU para la implementación de un sub-
lenguaje que se incorporar al modelo propuesto. Esto condujo a la creación de un
modelo de datos relacional y del lenguaje de consulta estructurado denominado SQL
(Structured Query Language).
A principio se lo denomino SEQUEL (lenguaje de consulta en ingles estructurado)
cuando en 1978 se la cambio por SQL, no obstante, siendo la IBM la precursora del
desarrollo del SQL y del modelo relacional, es la corporación
pone al mercado el primer producto comercial de SGBD que
Oracle que en 1979
la denomino Oracle
versión 1 y funcionaba
lenguaje de consulta.
en mini-computadoras e incluía la versión de SQL como
Posteriormente en 1981 la IBM introduce su primer producto relacional comercial el
SQL/DS. En 1985 se introduce el DB2 (Database 2).
Una de las principales desventajas del modelo relacional, en s s primeros años de
funcionamiento, respecto al modelo jerárquico y de red era la lentitud de respuesta
Mencione 10 características sobre los SGBD.
Listar de al menos 4 Programas Gestores de Bases de datos que se encuentra
en el mercado.
¿Cuál es el papel que cumplen los administradores de sistemas de bases de
datos?
frente a cantidades voluminosas de información y acceso concurrente.
1. Prepareunpanelconeltema“EvolucióndelosSGBDOracle,Databasey
SQL/DS ” Para el desarrollo del panel seguir la siguientes pautas:
a. Recopilar el contenido de diferentes fuentes
b. Presentar a los miembros del panel.
c. Formular preguntas por cada estudiante.
d. Responder a la pregunta planteada por uno de los integrantes.
e. Continuar el dialogo
f. Plantear otras preguntas pos parte del coordinador.
g. Resumir brevemente el contenido expuesto.
h. Sintetizar las exposiciones por parte del coordinador.
i. Establecer un diálogo con los estudiantes.
j. Analizar el contenido investigado.
Se calificará informe, defensa oral y escrita.
Característica del SQL.
El SQL es un lenguaje de cuarta generación y está compuesto por una serie de
sentencias en ingles estructuradas de alto nivel que sigue una sintaxis definida.
Aunque el SQL significa lenguaje de consulta estructurado, el SQL es más que una
herramienta de consulta, es:
➢ Lenguaje de definición de datos o LDD (DDL en ingles).
➢ Lenguaje de manipulación de datos o LMD (DML en ingles) .
➢ Lenguaje de control de datos o LCD (DCL en ingles).
➢ Lenguaje de consulta o LC (QL en ingles).
Ilustración 26 Componentes del SQL.
Por otro lado SQL no es un lenguaje de programación completo como el C++ o
Visual Basic ya que no contienen bloques de sentencias de comienzo o fin (Begin-
End), sentencias condicionales (if), sentencias de bucle (For, while, etc)2
2 Lo mencionado corresponde al SQL estándar. Los desarrolladores de SGBD añaden
características procedimentales a sus productos.
Adicionalmente, no es posible comprar el SQL como lo haría con otros lenguajes de
programación como el Visual Estudio, Java Builder o C++, etc. Ya que este es parte
embebida de los SGBD. Es por ello que el SQL no es considerado como un lenguaje de
programación sino como un sub-lenguaje.
A continuación se detalla un resumen de las características
SQL.
✓ Independencia de los vendedores.
✓ Portabilidad a través de los sistemas informáticos.
✓ Consultas interactivas.
✓ Acceso de un sistema de bases de datos desde de programas.
✓ Lenguaje completo de bases de datos.
✓ Arquitectura cliente/servidor.
más importantes del
1. Investigar individualmente sobre la notación BACKUS-NAUR FORM (BNF).
Se calificara Informe y defensa escrita.
1. En grupo de 2 personas, realizar una investigación sobre un SGBD propuesto por el
docente, considerar:
1.1. Exploración de objetos de la base de datos.
1.2. Barras de herramientas. (si posee)
1.3. Editor de sentencias SQL.
1.4. ¿En donde se almacenan las bases de datos?
1.5. ¿Cómo se crea una Base de Dato?
Se calificará: informe ilustrado, recopilación del contenido desde diferentes fuentes
diapositivas y defensa del tema.
2. Organice un panel sobre la información investigada en la actividad anterior. Para el
desarrollo del mismo siga la siguiente secuencia:
a. Formulación d el tema.
b. Presentar a los miembros del panel.
c. Formular preguntas por cada estudiante.
d. Responder a la pregunta planteada por uno de los integrantes.
e. Continuar el dialogo
f. Plantear otras preguntas pos parte del coordinador.
g. Resumir brevemente el contenido expuesto.
h. Sintetizar las exposiciones por parte del coordinador.
i. Establecer un diálogo con los estudiantes.
j. Elaborar una conclusión del contenido investigado.
UNIDAD N° 6: LENGUAJE DE DEFINICIÓN DE DATOS. LDD.
Competencia.
Utiliza el lenguaje de definición de datos para la implementación de bases de datos
en los sistemas gestores de bases de datos Access y MySql
precisión y pulcritud.
con orden, respeto,
En la unidad anterior se indico que el LDD en un componente del SQL. A como se
estudio el LDD está compuesto por una serie de sentencias en ingles estructurado de
alto nivel que siguen una sintaxis predefinida y normalizada.
Misión del LDD.
Es la encargada de la implantación de los objetos de un sistema de bases de datos,
creación y administración, a través de un conjunto de sentencias SQL que utilizan las
palabras reservadas:
✓ Crear un objeto en la base de datos (CREATE).
✓ Eliminar un objeto de la base de datos (DROP).
✓ Modificar un objeto de la base de datos (ALTER).
✓ Conceder privilegios sobre un objeto de la base de datos (GRANT).
✓ Eliminar privilegios sobre un objeto de la base de datos(REVOKE).
Objetos de un Sistema de Bases de Datos.
Los componentes de
1. Catálogos.
2. Esquemas.
3. Usuarios.
un sistema de
bases de
datos
1. ¿Cuál es la diferencia entre dato y base de dato?
2. ¿Qué es el SQL?
3. ¿Cuál es el objetivo delo SQL?
4. ¿Cuáles son los lenguajes que forman parte del SQL?
5. Mencione 3 SGBD que usted conoce.
6. Para que se utiliza la notación BNF.
4. T
a
b
l
a
s
.
5. V
i
s
t
a
s
.
6. Í
n
d
i
c
e
s
.
son entre otros:
Ilustración 27 Componente de un sistema de bases de datos y su relación.3
Tablas.
Son los objetos que tratan directamente de la información a procesar. El modelo de
datos relacional representa los datos y la asociación entre ellos, mediante una
colección de relaciones o tablas, cada una de las cuales tiene un número de columnas
con nombres únicos que definen un atributo que identifica a un dato común a
almacenar, las tablas tienen a su vez filas que posee información de un registro en
particular.
Ilustración 28 Terminología utilizada por referirse a una tabla y sus elementos.
3 En este modulo mencionaremos el uso de las tablas e índices
De los términos asociados a las tablas son: el grado y la cardinalidad, en donde el
grado indica el número de columnas y la cardinalidad el número de filas. Es así,
una tabla con cardinalidad cero es una tabla vacía, es decir, sin datos. Una tabla
puede tener cero filas, pero no cero columnas, al menos deben tener una.
Hay que considerar que el nombre de las tablas y columnas n
un Sistema de Base de Datos y Tablas respectivamente.
deben repetirse en
Tipos de datos más utilizados.
• Tipo CHAR, VARCHAR.
• Tipo NUMBER
• Tipo LONG
• Tipo DATE
1. Relacionar si estos tipos de datos se utilizan en los SGBD Microsoft Access y en
MySqL. Presente un informe grupal (Dos personas).
Creación de Tablas.
Para realizar la creación de Tablas, debemos considerar a un conjunto instrucciones
denominados dentro del SQL como LDD (Lenguaje de definición de datos).
La sintaxis para la creación de tablas dentro de la notación BNF es la siguiente:
Ilustración 29 Sintaxis elemental para la creación de tablas.
Así por ejemplo si se desea crear una tabla estudiante quedara así:
Restricciones de Integridad.
Un SGBD permite realizar una serie de controles sobre los objetos de los sistemas de
bases de datos. Uno de estos controles es de impedir anomalías de la información
que administra, por ejemplo, la redundancia de información. Uno de los mecanismos
de este fin es el uso de las restricciones de integridad que se define cuando se crea el
objeto o se modifica si el objeto esta en operación.
Si analizamos la tabla ESTUDIANTE con la sentencia anterior, esta permitirá ingresar
dos filas de datos con la misma información (redundancia).
Para evitar este inconveniente, existe un mecanismo denominado: Restricción de la
Clave Primaria.
Una columna clave primaria PRIMARY KEY, es la(s) columnas que permiten
identificar unívocamente cada fila en una tabla. Adicionalmente una columna clave
primaria no permite que en sus columnas no tenga ningún valor o valor nulo en
ninguna de sus filas.
En el ejemplo de la tabla estudiante, la columna NÚMERO es la que permite
identificar unívocamente cada fila y por lo tanto se la debe identificar como clave
primaria para que el SGBD pueda ser el control respectivo.
VíctorMartínezFalcones-http://avenetenterprise.web.officelive.com
Si incluimos la restricción mencionada en la creación de la tabla la sintaxis
quedaría de la siguiente manera:
El ejemplo de la tabla ESTUDIANTE queda redefinido así:
Restricción de valor No Nulo.
La restricción de valor No Nulo (NOT NULL) le indica al SGBD que no ingrese un valor
Null como valor, es decir, no permite que el registro de algún campo este en blanco.
Restricción de Unicidad.
La restricción de Unicidad (UNIQUE) le indica al SGBD que no permita que se ingrese
o modifique una fila y de cómo resultado valores repetidos en la columna con esta
restricción. Puede involucrar una o varias columnas.
Restricción de Control de Rango de dominio.
La restricción de Control de Rango de dominio (CHECK) le indica al SGBD que no
permita que se incumpla lo que se estipule en la clausula CHECK cuando se ingrese
o modifique una fila.
Valor por Omisión.
El valor por omisión (DEFAULT) le indica la SGBD que al momento de ingresar un
dato en una determinada columna le asigne un valor preestablecido en dicha columna
cuando no se ha establecido un valor en la inserción.
La sintaxis con las restricciones de integridad expuestas anteriormente quedaría de la
siguiente forma:
Analicemos como podría ser la sentencia SQL que me permita la creación de la tabla
PROFESOR con las siguientes características:
Una sentencia como la que sigue me permite crear la tabla en estudio:
Otro ejemplo seria:
En este caso el campo Número y código poseen una claves primarias, al escribir la
siguiente sentencia:
Su semántica es correcta de acuerdo al esquema presentado, pero al ejecutarla nos
dará error porque una tabla no puede tener DOS claves primarias. Lo que si es posible
es que dos o más columnas sean LA clave primaria, cuando en este caso se denomina
CLAVE PRIMARIA COMPUESTA.
En este caso ocurriría una restricción de clave primaria a nivel de tabla. En donde su
sintaxis sería la siguiente:
Entonces la sentencia correcta para crear la tabla matricula seria la siguiente:
1. Diseñe individualmente un cuadro sinóptico referente a
creación de tablas.
las restricciones en la
Modificación de tablas
Se modifican las tablas por dos razones: Cambiando la definición de una columna
(MODIFY) o añadiendo una columna a una tabla existente (ADD). La orden con la que
se modifica una tabla es ALTER TABLE, cuyo formato es:
ALTER TABLE <nombre_tabla>
[ ADD (<columna1> [,<columna2> . . .)] ]
O
[ MODIFY (<columna1> [,<columna2> . . .)] ]
[ ADD CONSTRAINTS <restriccion> ]
[ DROP CONSTRAINTS <restriccion> ]
Ejercicio resuelto con creación y modificación de tablas:
Crear la tabla FABRICANTES y ARTÍCULO con las siguientes columnas y
restricciones.
Solución:
Create table FABRICANTES (
cod_fabricante integer auto_increment primary key,
ADD añade una columna o más al final de una tabla.
MODIFY modifica una tabla o más columnas existentes en la tabla.
ADD C NSTRAINTS añade una restricción a la definición de la tabla.
DROP CONSTRAINTS elimina una restricción de la tabla.
nombre varchar(50),
pais varchar(20) default 'España',
constraint nombre_mayus check(nombre=upper(nombre)),
constraint pais_mayus check(pais=upper(pais)));
Create table ARTICULOS (
cod_articulo int,
cod_fabricante
peso int,
int,
categoria varchar(20),
primary key(cod_articulo,cod_fabricante,peso,categoria),
constraint pre_venta check(precio_venta>0),
constraint pre_costo check(precio_costo>0),
constraint cat_categoria check(categoria
in('Primera','Segunda','Tercera')));
Añadir la restricción de clave ajena a la columna COD_FABRICANTE de la tabla
ARTICULOS para que referencie a la tabla FABRICANTES. Realiza un borrado en
cascada.
Alter table ARTICULOS add foreign key(cod_fabricante)
references FABRICANTES(cod_fabricante);
Supresión de tablas
La orden DROP TABLE suprime una tabla de la base de datos. Cada usuario puede
borrar sus propias tablas. El formato de dicha orden es:
DROP TABLE <nombre_tabla> [CASCADE CONSTRAINTS]
Tendremos que tener cuidado con intentar borrar tablas cuyas claves principales estén
referenciadas como claves ajenas en otras tablas. Como por ejemplo, si tenemos dos
tablas como:
PROVINCIA (Código_Provincia, Nombre)
EMPLEADO (Código_empleado, Nombres, apellidos, Dirección,
Código_Provincia)
1. Ingrese las sentencias del ejemplo anterior en el SGBD y presentar un informe
contestando las siguientes preguntas:
a) ¿Qué dificultades obtuvo al momento de ejecutar los códigos?
b) ¿Qué aparece en cada ejercicio luego de ejecutar el código sin errores?
c) ¿Qué nuevos factores debe considerar para ingresar las sentencias SQL?
Si intentásemos suprimir la tabla PROVINCIA:
DROP TABLE PROVINCIAS
Nos daría un error debido a que podrían existir clave(s) ajena haciendo referencia a
esa clave(s) primaria, es decir, existe una restricción de clave ajena (clave foránea) en
la tabla EMPLEADO que referencia a la clave primaria de la tabla PROVINCIA.
Entonces, para borrar esta tabla hay que usar la opción CASCADE CONSTRAINTS,
que suprimirá todas la
tabla borrada.
Ejemplo:
restricciones de integridad que se refieran a claves de la
DROP TABLE PROVINCIAS CASCADE CONSTRAINTS
1. Presente un informe individual ilustrado en la que detalle los pasos para crear, editar y
eliminar tablas desde el sistema gestor de base de datos propuesto y explicado por el
docente.
Se calificara: imágenes, pasos detallados, conclusiones, recomendaciones y defensa.
Índices.
Uno de los objetivos de los índices es la de controlar la unicidad de los datos en las
columnas. Dicho de otra manera un índice es como un índice de un libro que
ayuda a encontrar la información mas eficientemente. Normalmente utilizan
estructuras de arboles balanceados (B-Tree), para las páginas de los índices que
utilizan punteros de sus registros a las filas de los datos.
Ilustración 30 Estructura de los Índices.
Aunque no está definido en el estándar SQL, casi todos los SGBD los utilizan.
Normalmente, crean automáticamente un índice por cada tabla basada en su clave
primaria.
Los índices no solo proporciona ventajas, sino también desventajas, por lo que
tendríamos que tener presente para decidir cuando son necesarios.
Ilustración 31 Ventajas y desventajas de los índices.
Creación, Modificación y Eliminación de Índices.
Creación de índices.
Al no estar estandarizado el uso de índices, cada SGBD utiliza su propia sintaxis,
aunque la mayoría utiliza una estructura más o menos par
grafica:
cida a la siguiente
Ilustración 32 Sintaxis para la creación de índices.
Ejemplo:
Ventajas.
considerablemente.
SereduceelnumerodefilasqueelSGBDdebe
leer en una consulta.
Desventajas.
secundaria.
Lasoperacionesdeingresoyeliminacion
yaquenoeliminararegistrossolamente.
Modificación de índices.
A diferencia de la creación de índices, en la que los SGBD proveen de una sintaxis
similar, no ocurre lo mismo con la modificación de estos. Mas aun, la mayoría de
SGBD ni siquiera proveen de una sentencia para la modificación de índices.
Entonces, la solución, seria eliminarlo primero y luego crear el índice nuevamente
con el mismo nombre y las características deseadas.
Eliminación de índices.
Tenemos más opciones que para la creación de los mismos.
Ilustración 33 Eliminación de Índices. Formato I.
Ilustración 34 Eliminación de Índices. Formato II.
Ejemplo:
Crear una tabla llamada PELÍCULAS con los siguientes campos y restricciones.
La clave primaria de esta tabla es el campo COD_PELÍCULA.
Crea la tabla CLIENTES con los siguientes campos y
restricciones: La clave primaria de esta tabla es el campo
DNI_CLIENTE
Crear las siguientes tablas:
Crear una tabla llamada PERSONAS con los campos (dni, nombre, apellido1,
apellido2).
Crear una tabla llamada VEHICULOS con los campos (CodigoVehiculo, marca,
modelo, cilindrada).
Crear una tabla llamada PERSONAS_VEHICULOS con los campos (dni,
CodigoVehiculo).
Crear una tabla llamada FAMILIA con los campos (CodigoFamilia,
DescripcionFamilia).
Identificar las claves primarias de cada tabla y las claves foráneas teniendo en cuenta
que 1 PERSONA puede tener 0 o varios VEHICULOS. 1 FAMILIA tendrá 2 o más
componentes, 1 PERSONA puede pertenecer a 1 o a ninguna familia.
Crear las siguientes tablas en MySQL especificando en cada una de ellas la clave
primaria y ajena(s) en caso de que las haya. Se debe permitir la eliminación de registros
en cascada.
Del siguiente Diseño fisco de datos, realizar la creación de tablas:
Sea el diseño lógico siguiente:
TRABAJADOR (Id_t, nombre, apellidos, tarifa, oficio,
id_supervisor) EDIFICIO (Id_E, dirección, tipo, nivel_calidad,
categoría) ASIGNACION (Id_T, ID_E, fecha_inicio, numero_dias)
Realizar la creación de tablas e ingresar al menos 3 registros en cada tabla.
UNIDAD N° 7: LENGUAJE DE MANIPULACIÓN DE DATOS.
Competencia.
Utiliza el lenguaje de manipulación de datos para la implementación de bases de
datos en los sistemas gestores de bases de datos Access y MySql con orden,
respeto, precisión y pulcritud.
En SQL92 la manipulación de datos se hace básicamente con las sentencias
SELECT (seleccionar), UPDATE (actualizar), DELETE (borrar) e INSERT (insertar)
que constituyen el lenguaje de manipulación de datos básico.
INSERT.
Inserta una o más filas nuevas dentro de la tabla especificada. Cuando se utilice la
cláusula VALUES sólo se insertará una fila.
INSERT INTO {<nombre de tabla>} [({<nombre de columna>},)]
{VALUES ({<literal> | :<variable host> | NULL},) }
Ejemplo usando sentencias INSERT.
Se dispone de las siguientes tablas de datos EMPLE y DEPART:
¿Qué significa las siglas LDD?
¿Por qué es importante el uso correcto del LDD?
¿Cuáles son las sentencias del LDD?
¿Cuáles son los objetos que gestiona un SGBD?
¿Cuáles son los SGBD que usa para sus bases de datos?
¿Para que se usa el Power Designer?
1. Realizar su respectiva creación de tablas.
Create table alumnos(
expediente int(10) primary key,
nombre varchar(50),
localidad varchar(50),
fecha_nac date,
direccion varchar(50),
curso int(2),
nivel varchar(10),
faltas int(3));
2. Realizar la inserción de todos registros mostrados en la figura.
Insert into alumnos values(123456,'Juan Miguel Soler
Bakero','Murcia','1995/10/10','Gran v’a, 2, 4A',1,'ESO',15);
Insert into alumnos values(654321,'Laura G—mez
Fern‡ndez','Lorca','1994/10/05','Junterones, 10,
5B',2,'ESO',25);
Insert into alumnos values(765432,'Beatriz Mart’nez
Hern‡ndez','Murcia','1993/05/05','Plaza Mayor, 6,
3B',3,'ESO',5);
Insert into alumnos values(987654,'Diego Mar’n
Llorente','Alhama de Murcia','1990/03/06','Diego de la Cierva,
5, 7A',1,'BACHILLER',34);
Insert into alumnos values(445544,'Juan Francisco Cano
Riquelme','Murcia','1992/01/07','Plaza de Belluga, 3,
4A',4,'ESO',13);
Insert into alumnos values(223322,'Raquel Riquelme
Rubio','Lorca','1990/23/11','San Juan, 14,
3B',1,'BACHILLER',7);
1. Realizar la inserción de los 5 últimos registros de la tabla ALUMNOS.
SELECT.
Selecciona filas de una o más tablas. Su sintaxis:
 SELECT [ALL | DISTINCT ] <lista de selección>
 FROM { {<nombre de tabla>},
 [WHERE <condición de búsqueda> ]
 [GROUP BY {<nombre de columna> | <número de columna>},]
 [[ORDER BY {{<nombre de columna | <número de
DESC] }, ] |
columna>} [ASC |
 <lista de selección>::= {* | {<expresión> | <nombre de
tabla>.<nombre
tabla>.*}
de columna> | <nombre de columna> | <nombre de
La palabra clave DISTINCT indica que si existen filas idénticas, sólo se mostrará
una de ellas.
Ejemplo usando sentencias SELECT.
Se dispone de las siguientes tablas de datos EMPLE y DEPART:
1. Ingrese las sentencias del ejemplo anterior en el SGBD y presentar un informe
contestando las siguientes preguntas:
a) ¿Qué dificultades obtuvo al momento de ejecutar los códigos?
b) ¿Qué aparece en cada ejercicio luego de ejecutar el código sin errores?
c) ¿Qué nuevos factores debe considerar para ingresar las sentencias SQL?
1. Realizar su respectiva creación de tablas.
2. Realizar la inserción de todos registros mostrados en la figura.
3. Realizar las siguientes consultas:
3.1. Mostrar el apellido, oficio y número de departamento de cada empleado.
select apellido, oficio, dept_no from emple;
3.2. Mostrar todos los datos de todos los empleados.
select * from emple;
3.3. Datos de los empleados ordenados por número de departamento descendentemente.
select * from emple order by dept_no desc;
3.4. Datos de los empleados ordenados por número de departamento descendentemente y
dentro de cada departamento ordenados por apellido ascendentemente.
select * from emple order by dept_no desc, apellido;
3.5. Mostrar los datos de los empleados cuyo salario sea mayor que 2000000.
Select * from emple where salario>2000000;
3.6. Mostrar los datos de los empleados cuyo oficio sea “ANALISTA”.
select * from emple where oficio='ANALISTA'
3.7. Seleccionar el apellido y oficio de los empleados del departamento número 20.
select apellido, oficio from emple where dept_no=20;
3.8. Mostrar los empleados cuyo departamento sea 10 y cuyo oficio sea “ANALISTA”. Ordenar
el resultado por apellido.
select * from emple where dept_no=10 and oficio='ANALISTA' order by
apellido;
3.9. Ordenar los empleados por oficio, y dentro de oficio por apellido.
select * from emple order by oficio, apellido
3.10. Mostrar los apellidos de los empleados cuyo oficio sea “VENDEDOR”, “ANALISTA” o
“EMPLEADO”.
select apellido from emple where
('VENDEDOR','ANALISTA','EMPLEADO');
oficio in
3.11. Mostrar los apellidos de los empleados cuyo oficio no sea ni “ANALISTA” ni “EMPLEADO”,
y además tengan un salario mayor de 200000.
select apel ido from emple where oficion not in
('ANALISTA','EMPLEADO') and salario>200000;
3.12. Obtener los apellidos de todos los empleados en minúscula.
select lower(apellido) from emple;
3.13. Mostrar los datos de los empleados que hayan sido contratados en el año 1992.
select * from emple where year(fecha_alt)=1992;
3.14. Mostrar los datos de los empleados del departamento 10 que no tengan comisión.
select * from emple where dept_no=10 and comision is null;
1. De las tablas EMPLE y DEPART realizar las siguientes consultas:
1.1. Mostrar el número, nombre y localización de cada departamento.
1.2. Datos de los empleados ordenados por apellidos.
1.3. Mostrar todos los datos de los empleados ordenados por apellido.
1.4. Seleccionar los empleados cuyo oficio sea “VENDEDOR” Mostrar los datos
ordenados por apellido.
1.5. Seleccionar de la tabla EMPLE los empleados cuyo apellido empiece por “A”.
UPDATE.
Modifica las columnas seleccionadas de una tabla en todas las filas que satisfacen
una condición de búsqueda.
UPDATE {<nombre de tabla>}
SET {<nombre de columna> = {<expresión> | NULL}},
[WHERE <condición de búsqueda>]
1. Ingrese las sentencias del ejemplo anterior en el SGBD y presentar un informe
contestando las siguientes preguntas:
a) ¿Qué dificultades obtuvo al momento de ejecutar los códigos?
b) ¿Qué aparece en cada ejercicio luego de ejecutar el código sin errores?
c) ¿Qué nuevos factores debe considerar para ingresar las sentencias SQL?
1. Realizar su respectiva creación de tablas.
2. Realizar la inserción de todos registros mostrados en la figura.
3. Establecer el número de plazas de todos los hospitales a 250.
Update HOSPITALES set num_plazas = 250
4. Poner en 2000 el número de plazas del hospital número 3.
Update HOSPITALES set num_plazas=2000 where cod_hospital=3
5. Con una sentencia UPDATE dobla el número de plazas de los hospitales cuya letra empiece con
“R”.
Update HOSPITALES
‘R*’
set num_plazas = num_plazas*2 where nombre like
1. Cree 5 sentencias usando la clausula UPDATE en la tabla HOSPITALES anotando el
enunciado correspondiente.
DELETE
Borra una o más filas de una tabla o vista. Si no se especifica la cláusula WHERE,
se borran todas las filas de la tabla señalada en la cláusula FROM. Si se especifica
la cláusula WHERE sólo serán borradas aquellas filas que hagan la condición de
búsqueda verdadera.
Su sintaxis:
1. Ingrese las sentencias del ejemplo anterior en el SGBD y presentar un informe
contestando las siguientes preguntas:
a) ¿Qué dificultades obtuvo al momento de ejecutar los códigos?
b) ¿Qué aparece en cada ejercicio luego de ejecutar el código sin errores?
c) ¿Qué nuevos factores debe considerar para ingresar las sentencias SQL?
DELETE FROM {<nombre de tabla> } [WHERE <condición de búsqueda>]
1. Realizar su respectiva creación de tablas.
2. Realizar la inserción de todos registros mostrados en la figura.
3. Borrar el registro de la persona cuyo DNI es igual a “22233311”.
Delete from PERSONA where dni = 22233311;
4. Borrar los registros de las personas con salario de 1900 y su función es de medico.
Delete from PERSONA where salario = 1900 and function = ‘MEDICO’
5. Borrar los registros de las personas que posean un salario entre 1200 a 1500
Delete from PERSONA where salario between 1200 to
6. Borrar todos los registros cuyos apellidos sean “Martínez Molina”
1500
Delete from PERSONA where apellidos like ‘Martínez Molina*’
1. Cree 5 sentencias usando la clausula DELETE en la tabla PERSONAS anotando su
enunciado correspondiente.
1. Ingrese las sentencias del ejemplo anterior en el SGBD y presentar un informe
contestando las siguientes preguntas:
a) ¿Qué dificultades obtuvo al momento de ejecutar los códigos?
b) ¿Qué aparece en cada ejercicio luego de ejecutar el código sin errores?
c) ¿Qué nuevos factores debe considerar para ingresar las sentencias SQL?
UNIDAD N° 8: DESARROLLO DE UNA APLICACIÓN DE GESTIÓN.
Competencia.
Aplica los conocimientos de diseño, implementación de bases de datos y diseño de
servicios de presentación en entornos gráficos para desarrollar una aplicación
informática de gestión de una manera ágil, ordenada y eficiente.
1. Presentar un informe de tres personas sobre: ¿Cómo se obtiene un presupuesto
económico de un software?
Para el informe considere: Pasos para realizar el presupuesto, conclusiones y
recomendaciones.
Se calificará: Informe detallado, Defensa y diapositivas.
2. Organice una mesa redonda en la que se discutirá el tema: “¿Cómo se obtiene un
presupuestoeconómicodeunsoftware?”.Paraeldesarrollodelamismaseguirla
siguiente secuencia:
a. Presentar a los participantes de la mesa.
b. Señalar las normas de desarrollo del evento.
c. Realizar las exposiciones con la participación de cada estudiante.
d. Resumir el contenido expuesto por el moderador.
e. Inicia el foro.
f. Formular conclusiones.
1. Analizar las diapositivas con el tema “Desarrollo de una aplicación de gestión”
presentadas por el docente. Seguir la siguientes pautas:
a. Analizar el contenido investigado.
b. Seleccionar las ideas principales.
c. Investigar el significado de cada idea
d. Sintetizar en oraciones las ideas principales.
e. Realizar un resumen con las oraciones elaboradas.
f. Presentar un informe detallado sobre la misma. Para el informe se considera los
tópicos, conclusiones y recomendaciones.
1. ¿Qué es Visual Basic?
2. ¿Cuáles son las versiones que visual Basic tiene en el mercado?
3. ¿Qué relación tiene una base de datos con los sistemas informáticos?
4. ¿Qué relación tiene un SGBD con un lenguaje de programación?
5. ¿Por qué se considera el SQL como un sub-lenguaje?
6. ¿Por qué es importante enlazar una base de dato con una aplicación informática de
gestión?
7. Listar las aplicaciones del Software.
Informe de especificación de requisitos.
Parte I. Identificación del Contexto.
1. Caratula.
2. Descripción de la institución.
3. Organigrama de la institución.
4. Antecedentes.
5. Árbol de problema sobre los procesos manuales y tediosos.
6. Procesos.
7. Entorno técnico.
Parte II. Especificación de los Requisitos.
1. Necesidad y justificación del nuevo producto.
2. Objetos
2.1. Tablas de la Base de datos.
2.2. Formularios.
2.3. Reportes.
3. Procesos y funciones propuestos, clasificadas por:
3.1. Ingreso.
3.2. Consulta.
3.3. Búsqueda.
3.4. Actualizaciones.
3.5. Calculo.
3.6. Reporte.
3.7. Respaldo.
3.8. Seguridad.
4. Delimitación.
5. Modelado de datos.
5.1. Diagrama Contextual.
5.2. Diagrama Físico de datos.
6. Modelado funcional y flujo de la información.
7. Métrica basada en líneas de código.
Parte III. Manual de Usuario.
1. Introducción.
2. Generalidades del sistema.
2.1. Requisitos de Hardware.
2.2. Requisitos de Software.
2.3. Instalación.
3. Descripción detallada del sistema.
3.1. Menú Principal.
3.2. Formularios en general.
4. Recomendaciones.
1. Presentar un informe detallado sobre la implantación de una base de datos con el
lenguaje de programación y SGBD indicados por el docente.
Para el informe considere: Ventanas capturadas, explicación y conclusiones y
recomendaciones

Más contenido relacionado

La actualidad más candente

Modelo Entidad Relacion E-R
Modelo Entidad Relacion E-RModelo Entidad Relacion E-R
Modelo Entidad Relacion E-RRobert Rodriguez
 
Modelo entidad relacion
Modelo entidad relacionModelo entidad relacion
Modelo entidad relacionCarmen Sanchez
 
Diseño de base de datos relacionales (Unidad 2)
Diseño de base de datos relacionales (Unidad 2)Diseño de base de datos relacionales (Unidad 2)
Diseño de base de datos relacionales (Unidad 2)Orlando Verdugo
 
Control interno informático
Control interno informáticoControl interno informático
Control interno informáticoJuan Moreno
 
Practica 1 1 De Analisis Y DiseñO De Sistemas De Informacion
Practica 1 1  De Analisis Y DiseñO De Sistemas De InformacionPractica 1 1  De Analisis Y DiseñO De Sistemas De Informacion
Practica 1 1 De Analisis Y DiseñO De Sistemas De Informacionguest9fcd89
 
Taller de Base de datos - Unidad 1 SGBD introduccion
Taller de Base de datos - Unidad 1 SGBD introduccionTaller de Base de datos - Unidad 1 SGBD introduccion
Taller de Base de datos - Unidad 1 SGBD introduccionJosé Antonio Sandoval Acosta
 
Especificación de Requerimientos
Especificación de RequerimientosEspecificación de Requerimientos
Especificación de RequerimientosUTPL UTPL
 
Presentación Modelo de Datos
Presentación Modelo de DatosPresentación Modelo de Datos
Presentación Modelo de DatosEnrique Cabello
 
DEFINICION DE CALIDAD Y CALIDAD DE SOFTWARE
DEFINICION DE CALIDAD Y CALIDAD DE SOFTWAREDEFINICION DE CALIDAD Y CALIDAD DE SOFTWARE
DEFINICION DE CALIDAD Y CALIDAD DE SOFTWARELidizz Garcia Alvarado
 
Funciones de un administrador de base de datos
Funciones de un administrador de base de datosFunciones de un administrador de base de datos
Funciones de un administrador de base de datosRodolfo Kuman Chi
 
IN Unidad 4: Visualización de información
IN Unidad 4: Visualización de informaciónIN Unidad 4: Visualización de información
IN Unidad 4: Visualización de informaciónFranklin Parrales Bravo
 

La actualidad más candente (20)

1.6 Activos Informáticos
1.6 Activos Informáticos1.6 Activos Informáticos
1.6 Activos Informáticos
 
Formas Normales
Formas NormalesFormas Normales
Formas Normales
 
Modelo Entidad Relacion E-R
Modelo Entidad Relacion E-RModelo Entidad Relacion E-R
Modelo Entidad Relacion E-R
 
Modelo entidad relacion
Modelo entidad relacionModelo entidad relacion
Modelo entidad relacion
 
Requisitos
RequisitosRequisitos
Requisitos
 
Diseño de base de datos relacionales (Unidad 2)
Diseño de base de datos relacionales (Unidad 2)Diseño de base de datos relacionales (Unidad 2)
Diseño de base de datos relacionales (Unidad 2)
 
Control interno informático
Control interno informáticoControl interno informático
Control interno informático
 
Practica 1 1 De Analisis Y DiseñO De Sistemas De Informacion
Practica 1 1  De Analisis Y DiseñO De Sistemas De InformacionPractica 1 1  De Analisis Y DiseñO De Sistemas De Informacion
Practica 1 1 De Analisis Y DiseñO De Sistemas De Informacion
 
Desnormalización de Base de Datos
Desnormalización de Base de DatosDesnormalización de Base de Datos
Desnormalización de Base de Datos
 
Taller de Base de datos - Unidad 1 SGBD introduccion
Taller de Base de datos - Unidad 1 SGBD introduccionTaller de Base de datos - Unidad 1 SGBD introduccion
Taller de Base de datos - Unidad 1 SGBD introduccion
 
Especificación de Requerimientos
Especificación de RequerimientosEspecificación de Requerimientos
Especificación de Requerimientos
 
Modelo entidad relacion
Modelo entidad relacionModelo entidad relacion
Modelo entidad relacion
 
10.el diseño en el nivel de componentes
10.el diseño en el nivel de componentes10.el diseño en el nivel de componentes
10.el diseño en el nivel de componentes
 
Presentación Modelo de Datos
Presentación Modelo de DatosPresentación Modelo de Datos
Presentación Modelo de Datos
 
UML: CASOS DE USO
UML: CASOS DE USOUML: CASOS DE USO
UML: CASOS DE USO
 
DEFINICION DE CALIDAD Y CALIDAD DE SOFTWARE
DEFINICION DE CALIDAD Y CALIDAD DE SOFTWAREDEFINICION DE CALIDAD Y CALIDAD DE SOFTWARE
DEFINICION DE CALIDAD Y CALIDAD DE SOFTWARE
 
Funciones de un administrador de base de datos
Funciones de un administrador de base de datosFunciones de un administrador de base de datos
Funciones de un administrador de base de datos
 
Diagramas de Casos de Uso del Negocio y del Sistema
 Diagramas de Casos de Uso del Negocio y del Sistema Diagramas de Casos de Uso del Negocio y del Sistema
Diagramas de Casos de Uso del Negocio y del Sistema
 
Alcance de la auditoría informática
Alcance de la auditoría informáticaAlcance de la auditoría informática
Alcance de la auditoría informática
 
IN Unidad 4: Visualización de información
IN Unidad 4: Visualización de informaciónIN Unidad 4: Visualización de información
IN Unidad 4: Visualización de información
 

Similar a Módulo de Herramientas case

Modelo de bases de datos
Modelo de bases de datosModelo de bases de datos
Modelo de bases de datosYipc11
 
Base de datos presentacion
Base de datos presentacionBase de datos presentacion
Base de datos presentacionluisalvarez594
 
Base de datos
Base de datosBase de datos
Base de datosVictor
 
Modelos de datos
Modelos de datosModelos de datos
Modelos de datosJeff Jesús
 
¿QUE ES UNA BASE DE DATOS? ¿COMO ES? ¿Y PARA QUE SIRVE?
¿QUE ES UNA BASE DE DATOS? ¿COMO ES? ¿Y PARA QUE SIRVE?¿QUE ES UNA BASE DE DATOS? ¿COMO ES? ¿Y PARA QUE SIRVE?
¿QUE ES UNA BASE DE DATOS? ¿COMO ES? ¿Y PARA QUE SIRVE?Gely Perez
 
Base de datos
Base de datosBase de datos
Base de datosalex238a
 
Modelo de bases de datos (william mata 26550902)
Modelo de bases de datos (william mata 26550902)Modelo de bases de datos (william mata 26550902)
Modelo de bases de datos (william mata 26550902)WilliamMata7
 
Introducción a las base de datos
Introducción a las base de datosIntroducción a las base de datos
Introducción a las base de datosJuan Soubervielle
 
Bases de datos
Bases de datosBases de datos
Bases de datosJosue Diaz
 
Guía unidad 3 base de datos
Guía unidad 3 base de datosGuía unidad 3 base de datos
Guía unidad 3 base de datosJuanSaldaaRived
 
Tematica once
Tematica onceTematica once
Tematica onceALBEIROCC
 

Similar a Módulo de Herramientas case (20)

Unidad A
Unidad AUnidad A
Unidad A
 
Modelo de bases de datos
Modelo de bases de datosModelo de bases de datos
Modelo de bases de datos
 
Base de datos presentacion
Base de datos presentacionBase de datos presentacion
Base de datos presentacion
 
Base de datos
Base de datosBase de datos
Base de datos
 
Modelos de datos
Modelos de datosModelos de datos
Modelos de datos
 
¿QUE ES UNA BASE DE DATOS? ¿COMO ES? ¿Y PARA QUE SIRVE?
¿QUE ES UNA BASE DE DATOS? ¿COMO ES? ¿Y PARA QUE SIRVE?¿QUE ES UNA BASE DE DATOS? ¿COMO ES? ¿Y PARA QUE SIRVE?
¿QUE ES UNA BASE DE DATOS? ¿COMO ES? ¿Y PARA QUE SIRVE?
 
Base de datos
Base de datosBase de datos
Base de datos
 
Modelo de bases de datos (william mata 26550902)
Modelo de bases de datos (william mata 26550902)Modelo de bases de datos (william mata 26550902)
Modelo de bases de datos (william mata 26550902)
 
Modelo de datos
Modelo de datosModelo de datos
Modelo de datos
 
Introducción a las base de datos
Introducción a las base de datosIntroducción a las base de datos
Introducción a las base de datos
 
Modelo de datos
Modelo de datosModelo de datos
Modelo de datos
 
Bases de datos
Bases de datosBases de datos
Bases de datos
 
Bdintro
BdintroBdintro
Bdintro
 
Guia unidad-3-base-de-datos
Guia unidad-3-base-de-datosGuia unidad-3-base-de-datos
Guia unidad-3-base-de-datos
 
Guía unidad 3 base de datos
Guía unidad 3 base de datosGuía unidad 3 base de datos
Guía unidad 3 base de datos
 
Tematica once
Tematica onceTematica once
Tematica once
 
Primera clase
Primera clasePrimera clase
Primera clase
 
Trabajo de bases de datos
Trabajo de bases de datosTrabajo de bases de datos
Trabajo de bases de datos
 
Gestores de bases de datos
Gestores de bases de datosGestores de bases de datos
Gestores de bases de datos
 
Base de datos 1
Base de datos 1Base de datos 1
Base de datos 1
 

Último

La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafiosFundación YOD YOD
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxazmysanros90
 
El uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELEl uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELmaryfer27m
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfsoporteupcology
 
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersSalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersIván López Martín
 
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...JaquelineJuarez15
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024GiovanniJavierHidalg
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativaAdrianaMartnez618894
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxpabonheidy28
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxaylincamaho
 
ejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sofejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sofJuancarlosHuertasNio1
 
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...FacuMeza2
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesFundación YOD YOD
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)GDGSucre
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfSergioMendoza354770
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadMiguelAngelVillanuev48
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA241531640
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdfIsabellaMontaomurill
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptMiguelAtencio10
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxNombre Apellidos
 

Último (20)

La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafios
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptx
 
El uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELEl uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFEL
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdf
 
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersSalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
 
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativa
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docx
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
 
ejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sofejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sof
 
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento Protégeles
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidad
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdf
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.ppt
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
 

Módulo de Herramientas case

  • 1. eesarrollo de Aplicaciones Entornos de Generación y en con CASE Tercero de Bachillerato Técnico en Comercio y Administración Especialidad Aplicaciones Informáticas.
  • 2. UNIDAD Nº1: INTRODUCCIÓN. VENTAJAS DE LA BASES DE DATOS. UTILIZACION DE Competencia. Relaciona los modelos de bases de datos más comunes a partir de sus componentes para realizar el diseño contextual de datos de una empresa de una manera ágil y precisa. Importancia y Características de la base de datos. Desde el inicio de la informática los sistemas han necesitado trabajar con grandes volúmenes de información, es así que nacieron los sistemas de información gestionados con lenguajes de programación. Rápidamente los sistemas se fueron complicando, en donde fue evidente la necesidad de que en la parte en donde se administre los datos fuese más eficiente y sobre todo con un control confiable de los datos administrados, es aquí en donde se hacen presentes los Sistemas Gestores de Bases de Datos (SGBD) Dato. Es la información concerniente al mundo real, así por ejemplo: Nombre del Estudiante, Cedula de Identidad, etc. Base de Dato. 1. ¿Qué es un sistema de Información? 2. ¿Cuáles son los elementos de un sistema de información? 3. ¿Cuál es el papel que cumple el analista de sistemas? 4. ¿Quiénes son los participantes en el análisis de sistemas de información? 5. Realizar una explicación breve sobre las faces de definición, desarrollo y mantenimiento en el análisis de los sistemas de información. 6. Nombre los modelos de planificación de ciclo de vida del Software y explique uno de ellos. 7. Reflexione: ¿Qué es una base de datos? 8. Reflexione: ¿Para qué se aplica una base de Datos? 9. Reflexione: ¿En donde se utilizan las bases de datos?
  • 3. Conjunto de Datos que están organizados entre sí, estos puede en procesadores de Texto o en hoja electrónica, y además lo papel, es decir en un medio no lógico, por ejemplo: estar almacenados pueden estar en un Sistemas de Información. Están relacionados con archivos planos que gestionan la información, en este tipo de estructura trabajan programas de desarrollo como: Pascal, C, etc. En la cual si se utiliza archivos planos, al momento de la modificación de la estructura de datos, cambiaria además gran parte de código o programas de aplicación que utilice este código Sistemas de Base de datos. Conjunto de datos inter relacionados y organizados de tal forma que pueden ser administrados por un SGBD. Mientras un archivo plano solo tiene datos a gestionar, un SGBD gestiona datos y Meta-Datos, que podría ser restricciones al momento de ingresar un dato, es decir, al ingresar el sexo de la persona el SGBD solo tiene que permitir Masculino o Femenino, mas no otro dato, otro meta dato son los Índices, etc.
  • 4. Sistema de Gestión de Bases de Datos. Es un Software de apli ación que permite extraer y almacenar información de un sistema de Bases de Datos, proporcionándolos seguridad, organización, independencia, integridad y consistencia en los datos, recuperación ante fallos del sistema, administración de la información. Analizando todas las ventajas que proporcionan los SGBD, podríamos decir que son de gran utilidad, pero consideremos, que trabajar con SGBD resultaría costoso y complejo, es por ello seguridades altas, etc., archivos planos. que para aplicaciones pequeñas que no requieren se lo mas conveniente es utilizar sistemas que trabajen con A finales de los 80 y principios de los 90 se han realizado algunos avances en el área de los SGBD, y quizás lo más significante, podría decirse la incursión de los SGBD en la Internet, en la que sistemas como los de Bancos, Instituciones de Seguridad Social, entre otros, utilizan este sistema. Modelos de Bases de Datos. Bases de datos Jerárquicos. Entre los primeros modelos de datos que surgieron en los SGBD comerciales se encuentran las estructuras en árbol, propias de los productos jerárquicos.
  • 5. Los árboles, como instrumentos para la representación de estructuras de datos, presentan problemas por su poca flexibilidad, lo que da origen a una falta de adaptación a muchas organizaciones reales. La implementación del modelo Jerárquico en los productos se ll punteros; estructura física que varía según los productos, e va a cabo en base a incluso un mismo producto proporciona distintas organizaciones físicas a fin de que el usuario pueda conseguir una mayor eficiencia en el diseño físico de la base de datos. Los segmentos, en función de su situación en el árbol y de pueden denominarse como: sus características, 1. SEGMENTO PADRE: Es aquél que tiene descendientes, todos ellos localizados en el mismo nivel. 2. SEGMENTO HIJO: Es aquél que depende de un segmento de nivel superior. Todos los hijos de un mismo padre están en el mismo nivel del árbol. 3. SEGMENTO RAÍZ: El segmento raíz de una base de datos jerárquica es el padre que no tiene padre. La raíz siempre es única y ocupa el nivel superior del árbol.
  • 6. Ilustración 1 Modelo Jerárquico. Bases de Datos de Red. Es similar a la jerárquica, es decir que poseen registros conectados entre si por medio de enlaces y cada registro es una colección de campos (atributos), cada uni de los cuales tiene solamente un valor de un dato y un enlace es una asociación de dos registros exclusivamente. Ilustración 2 Modelo de Red
  • 7. Bases de datos Relacionales. Este modelo representa los datos y las relaciones entre los datos, mediante un conjunto de tablas conocidas también como relaciones, cada una de las cuales tiene un numero de columnas o atributos con nombres únicos, cada uno de los campos poseen un dato que se identifica un tipo común de datos a almacenar, las tablas tienen a su vez filas que se conocen como tuplas, que contienen información de un registro en particular. Cada tabla está asociada habitualmente con otra(s) tablas como resultado de la relación representada en el diagrama conceptual. Ilustración 3 Modelo Relacional Realizar las siguientes actividades: 1. Realizar mediante diferentes fuentes una investigación referente al tema: ¿En que se relacionalostresmodelosdebasesdedatosenfuncióndelosproblemasoriginadosenla actualización de los datos? 2. Analizar el contenido investigado. 3. Establecer comparaciones. 4. Elabore cuadros esquemáticos. 5. Presentar el trabajo en plenaria.
  • 8. Arquitectura de los sistemas. Ilustración 4 Bosquejo de una arquitectura Centralizada. Ilustración 5 Bosquejo de una arquitectura Distribuida.
  • 9. 1. Realizar la técnica del diagrama de VENN en la que relacione las ilustraciones 4 y 5 referente a las arquitectura de los sistemas. Acceso a Sistemas de Bases de Datos. Para el acceso a los datos desde un SGBD se puede realizar en dos configuraciones: 1. Arquitectura Maestro - Esclavo. 2. Arquitectura Cliente – Servidor. Arquitectura Maestro - Esclavo. Es aquel en el cual un PC que está integrada a la red accede al servidor y ejecuta una aplicación que re osa en el mismo. Este modelo se caracteriza por tener terminales no-Inteligentes, ya que todas las tareas “Principales” la realiza el servidor central, esto permite de que como todos los procesos son ejecutados por el servidor, un tráfico enorme si se considerase una red grande, es por ello que se necesitaría una maquina potente como servidor para que puedan atender a todos los nodos. Arquitectura Cliente – Servidor. Es el cual en que las tareas de una aplicación se dividen ntre computadoras servidor – cliente a través de la red de computadoras. En este caso los clientes se instala y ejecuta los programas de aplicación, este software realiza tareas como verificar que los datos ingresados por el usuario sean
  • 10. correctos, etc. Y solo envía la petición cuando desee acceder a la información u otra cosa. La arquitectura Cliente – Servidor consiste en tres capas lógicas: 1. Capa de Presentación. 2. Capa de Aplicación. 3. Capa de Datos. Como resultado de esta descomposición se puede tener sistemas de 2-capas, 3- capas o Multicapas (n-capas). Ilustración 6 Bosquejo de una arquitectura de 3 capas en una aplicación Web.
  • 11. UNIDAD 2: DISEÑO DE BASES DE DATOS RELACIONALES. Competencia. Diseña diagramas conceptuales y lógicos de los sistemas de in ormación aplicando las metodologías de diseño con agilidad, orden y pulcritud. El Diagrama de Entidad - Relación. El modelo E/R fué propuesto inicialmente por PETER P. CHEN en 1976 y 1977, estos diagramas hacen énfasis en las relaciones entre los datos. Todos los sistemas almacenan y usan información acerca del ambiente en el cual interactúan; a veces, esta información es mínima, pero en la mayoría de los sistemas es bastante compleja. No solo deseamos conocer en detalle que información hay en cada agregado de datos, sino que también queremos conocer la relación que existe entre agregados. Este aspecto del sistema no se resalta en el diagrama de flujo, pero sí aquí. Este diagrama, también denominado diagrama conceptual con elementos fundamentales: ta de los siguientes Grafico Nombre Grafico Nombre Entidad Relación Atributo Identificador Entidad. Es aquel objeto acerca Datos del cual queremos almacenar información en la Base de 1. Realizar un esquema conceptual referente a los elementos de las bases de datos (Dato, base de dato, sistema de base de dato y Sistema de gestión de bases de datos) 2. Mencione tres modelos de bases de datos. 3. Mencione 3 características referentes a las bases de datos relacionales. 4. Mencione 3 ventajas del uso de las bases de datos relacionales
  • 12. Atributo. Es una característica de interés o un hecho sobre una entidad o sobre una relación. Los atributos representan las propiedades básicas de las entidades y de las relaciones. Gráficamente, se representan mediante bolitas que cuelgan de las entidades o relaciones a las que pertenecen. Los atributos también pueden clasificarse en monovalentes o polivalentes. Un atributo monovalente es aquel que tiene un solo valor para cada ocurrencia de la entidad o relación a la que pertenece. Un atributo polivalente es aquel que tiene varios valores para cada ocurrencia de la entidad o relación a la que pertenece. Identificador. Un identificador de una entidad es un atributo o conjunto de atributos que determina de modo único cada ocurrencia de esa entidad. Toda entidad tiene al menos un identificador y puede tener varios identificadores alternativos. Las relaciones no tienen identificadores. Relaciones. Se representan por medio de rombos en el diagrama y son la serie de conexiones o asociaciones entre los tipos de objetos que están conectados por la relación por medio de flechas. Ilustración 7 Entidades, atributos, identificadores y relación. Cardinalidad. De un atributo indica el número mínimo y el número máximo de valores que puede tomar para cada ocurrencia de la entidad o relación a la que pertenece. El valor por omisión es (1,1). Las ocurrencias pueden ser: 1. 1:1 Cuando la relación es de uno a uno 2. 1:n Cuando la relación es de uno a muchos 3. n:m Cuando la relación es de muchos a muchos
  • 13. Ilustración 8 Obligatoriedad y Cardinalidad (O, C). 1. Expresar las restricciones de cardinalidad para los casossiguientes: 1.1. Los idiomas pueden ser hablados por personas, o no. Las personas tienen que hablar al menos un idioma. 1.2. Todo barco debe tener un capitán y sólo uno. Un capitán puede estar asignado como máximo a un barco. 1.3. Todo alumno debe estar matriculado como mínimo de una asignatura. 1.4. Un río no puede desembocar en más de un mar. 1.5. Una persona puede tener o no hijos. 1.6. Un cliente puede comprar muchos productos. 1.7. En una factura se detallan muchos productos y también el producto se pueden detallar en muchas facturas. 1.8. Un cliente se registra en muchas facturas y en la misma se registra un solo cliente. 1.9. Muchos productos son vendidos por un proveedor. 1.10. Un producto posee muchas marcas. 1.11. Un padre de familia matricula a muchos hijos. 1.12. A muchos estudiantes se califica muchas materias. 1.13. A cada materia se le califica muchos parámetros. 1.14. Muchos estudiantes poseen un representante.
  • 14. Metodología de diseño conceptual El primer paso en el diseño de una base de datos es la producción del esquema conceptual. Normalmente, se construyen varios esquemas conceptuales, cada uno para representar las distintas visiones que los usuarios tienen de la información. Cada una de estas visiones suelen corresponder a las diferentes áreas funcionales de la empresa como, por ejemplo, producción, ventas, recursos humanos, etc. Estas visiones de la información, denominadas vistas, se pueden identificar de varias formas. Una opción consiste en examinar los diagramas de flujo de datos, que se pueden haber producido previamente, para identificar cada una de las áreas funcionales. La otra opción consiste en entrevistar a los usuarios, examinar los procedimientos, los informes y los formularios, y también observar el funcionamiento de la empresa. A los esquemas conceptuales correspondientes a cada vista de usuario se les denomina esquemas conceptuales locales. Cada uno de estos esquemas se compone de entidades, relaciones, atributos, dominios de atributos e identificadores. El esquema conceptual también tendrá una documentación, que se irá produciendo durante su desarrollo. Las tareas a realizar en el diseño conceptual son las siguientes: 1. Identificar lasentidades. 2. Identificar lasrelaciones. 3. Identificar los atributos y asociarlos a entidades y relaciones. 4. Determinar los dominios de los atributos. 5. Determinar los identificadores. 6. Dibujar el diagrama entidad-relación. 7. Revisar el esquema conceptual local con el usuario. Metodología del diseño lógico de datos. A partir de un esquema conceptual obtenemos una especificación lógica de la base de dato, tablas y columnas en el modelo relacional. Las entidades se transforman en tablas, que es la estructura primaria de las bases de datos relacionales, y, Los atributos de las entidades pasan a ser columnas de las tablas. El (los) atributo que sirve de identificador de una entidad pasa a ser la clave primaria (que es la que permite identificar a cada registro de manera única en la tabla) en cada tabla.
  • 15. La relación entre las entidades se la representa adicionando una columna, o mas de una dependiendo del caso, en una de las tablas redundantes se las denomina clave foránea, que es la que permite relacionar los registros entre tablas, y a su vez es la clave primaria de la tabla(s) relacionada. Un esquema lógico es una representación lingüística del esquema conceptual como resultado del diagrama entidad relación, el que es representado por una serie de nombres, el de la tabla y el de las columnas. El nombre de la tabla (entidad) se la representa con letras mayúsculas y después entre paréntesis las columnas (atributos) separadas por comas (,). La clave primaria (identificador) se representa subrayando la columna(s), y la clave foránea subrayando la columna(s) correspondiente con línea discontinua. Diseño lógico en relaciones binarias de muchos a muchos.
  • 16. Diseño lógico en relaciones binarias de uno a muchos o muchos a uno.
  • 17. Diseño lógico en relaciones binarias de uno a uno. 1. Elabore un cuadro de secuencia referente a las metodologías del diseño conceptual y diseño lógico.
  • 18. Ejercicio resuelto de DER. El almacén de alquiler de películas MOVIES necesita de un sistema informático, para ello su gerente explica sus requisitos: Un video se identifica por su titulo y categoría y sus actores, de este existe muchas copias para que sean alquiladas por uno o varios clientes, cuando este se acerca a realizar el alquiler, se le solicita su cedula como prenda, poste iormente se apunta sus nombres, apellidos, dirección y teléfono. Para cada video existen muchos actores, de las cuales se Nombre, edad y nacionalidad. Diagrama Conceptual. Diseño lógico. desea registrar su
  • 19. 1. Complete el siguiente problema sus atributos y su diseño lógico. NEW FASHION BOUTIQUE es el nombre de una micro-empresa que se dedica al diseño, manufactura, venta y comercialización de ropa femenina diseñada para clientes exclusivos, la forma en que NEW FASHION BOUTIQUE lleva a cabo sus actividadestransaccionales, esta detallada de lasiguiente manera: La dueña de la Boutique realiza la compra de materiales (cierres, hilos, pellón, botones, entre otros), así también materiales que proporcionan mantenimiento a las maquinas (aceite, agujas, etc.). La ropa se confecciona utilizando telas que algunas son proporcionados por los clientes y otras son vendidas por la misma Boutique, desde luego el cliente indica la fecha de entrega del producto final. El proceso de automatización del presente sistema es para el control de las ventas, productos, proveedores y clientes 2. A partir del siguiente enunciado se desea realiza, con la ayuda del docente el modelo (Diagrama)entidad-relación. 2.1. “Una empresa vende productos a varios clientes. Se necesita conocer los datos personales de los clientes (nombre, apellidos, dni, dirección y fecha denacimiento).Cadaproducto tiene un nombre y un código, así como un precio unitario. Un cliente puedecomprar varios productos a la empresa, y un mismo producto puede ser comprado por varios clientes. Los productos son suministrados por diferentes proveedores. Se debe tener en cuenta que un producto sólo puede ser suministrado por un proveedor,yqueunproveedorpuedesuministrardiferentesproductos.De cada proveedor se desea conocer el NIF, nombre y dirección”.
  • 20. 2.2. “Se desea diseñar la base de datos de un Instituto. En la base de datos se desea guardar los datos de los profesores del Instituto (DNI, nombre,
  • 21. dirección y teléfono). Los profesores imparten módulos, y cada módulo tiene un código y un nombre. Cada alumno está matriculado en uno o varios módulos. De cada alumno se desea guardar el nº deexpediente, nombre, apellidos y fecha de nacimiento. Los profesores pueden impartir varios módulos, pero un módulo sólo puede ser impartido por un profesor. Cada curso tiene un grupo de alumnos, uno de los cuales es el delegado del grupo”. 2.3. “La clínica “SAN PATRÁS” necesita llevar un control informatizado de su gestión de pacientes ymédicos. De cada paciente se desea guardar el código, nombre, apellidos, dirección, población,provincia,códigopostal,teléfonoyfechadenacimiento. De cada médico se desea guardar el código, nombre, apellidos, teléfono y especialidad. Se desea llevar el control de cada uno de los ingresos que el paciente hace en el hospital. Cada ingreso que realiza el paciente queda registrado en la base de datos. De cada ingreso se guarda el código de ingreso (que se incrementará automáticamente cada vez que el paciente realice un ingreso), el número de habitación y cama en la que el paciente realiza el ingreso y la fecha de ingreso. Un médico puede atender varios ingresos,peroelingresodeunpacientesolopuedeseratendidoporunúnico médico.Unpacientepuede realizarvariosingresosenel hospital”. 3. A partir del siguiente enunciado realizar en grupo de tres el modelo (Diagrama) entidad-relación. 3.1. Una empresa desea diseñar una base de datos para almacenar en ella toda lainformacióngeneradaencadaunodelosproyectosqueéstarealiza. “De cada uno de los proyectos realizados interesa almacenar el código, descripción, cuantía del proyecto, fecha de inicio y fecha de fin. Los proyectos son realizados por clientes de los que se desea guardar el código, teléfono, domicilio y razón social. Unclientepuederealizarvarios proyectos, peroun solo proyecto esrealizado por un único cliente. Enlosproyectosparticipancolaboradoresdelosquesedisponelasiguiente información:nif, nombre, domicilio, teléfono, banco y número de cuenta. Un colaborador puede participar en varios proyectos. Los proyectos son realizadosporunoomáscolaboradores.Los colaboradores de los proyectos reciben pagos. De los pagos realizados se quiere guardar el número de pago, concepto, cantidad y fecha de pago. También interesaalmacenarlos diferentestiposde pagos quepuederealizarlaempresa.Decadaunodelos tipos de pagos se desea guardar el código y descripción. Un tipo de pago puede pertenecer a varios pagos”.
  • 22. UNIDAD N° 3: OPTIMIZACIÓN DE LAS BASES DE DATOS RELACIONALES. Competencia. Optimiza el diseño de las bases de datos aplicando las reglas de normalización de una manera ágil y precisa. 1. Preparar informe investigativo de tres personas referente a la herramienta POWER DESIGNER, considerando los siguientes temas: 1.1. Empresa creadora. 1.2. Funciones. 1.3. Requerimientos de Hardware y Software. 1.4. Pantallas. 1.5. Barras de herramientas. 1.6. Conclusiones. Se calificará Informe, defensa y diapositivas. 2. Realizar un panel sobre el tema “Características, manejo y bondades del programa POWER DESIGNER”. Para el desarrollo del mismo seguir la siguiente secuencia: a. Haber investigado de diferentes fuentes. b. Presentar a los miembros del panel. c. Formular preguntas por cada estudiante. d. Responder a la pregunta planteada por uno de los integrantes. e. Continuar el dialogo f. Plantear otras preguntas pos parte del coordinador. ¿Qué es el modelo relacional? Grafique y nombre los símbolos usados en el diagrama entidad relación. Explique sobre el uso de cardinalidad y obligatoriedad en el modelo relacional. Mencione los 7 pasos para realizar un correcto diagrama entidad-relación. ¿En qué consiste el diseño lógico? Realizar el diseño lógico del siguiente diagrama Entidad relación 7. Graficar el Diagrama Entidad Relación del siguiente esquema lógico.
  • 23. g. Resumir brevemente el contenido expuesto. h. Sintetizar las exposiciones por parte del coordinador. i. Establecer un diálogo con loe estudiantes. j. Analizar el contenido investigado. Teoría de la Normalización. Cuando se diseña una base de datos mediante el modelo relacional, al igual que ocurre en otros modelos de datos, tenemos distintas alternativas, es decir, podemos obtener diferentes esquemas relacionales y no todos son equivalentes, ya que algunos van a representar la realidad mejor que otros. Es necesario conocer qué propiedades debe tener un esquema relacional para representar adecuadamente una realidad y cuáles son los problemas que se pueden derivar de un diseño inadecuado. La teoría de la Normalización es un método objetivo y riguroso que se aplica en el diseño de bases de datos relacionales. Algunos problemas que se pueden presentar son: • Incapacidad para almacenar ciertos hechos • Redundancias y por tanto, posibilidad de incoherencias • Ambigüedades • Pérdida de información (aparición de tuplas espúreas) • Pérdida de dependencias funcionales, es decir, ciertas restricciones de integridad que dan lugar a interdependencias entre los datos. • Aparición en la BD de estados no válidos, es decir, anomalías de inserción, borrado y modificación. En conclusión el esquema relacional obtenido debe ser analizado para comprobar que no presenta los problemas anteriores. Analicemos la siguiente relación: ESCRIBE
  • 24. AUTOR NACIONALIDAD COD_LIBRO TITULO EDITORIAL AÑO Date, C. Norteamericana 98987 Database Addison 1990 Date, C. Norteamericana 97777 SQL Stan Addison, W. 1986 Date, C. Norteamericana 98987 Guide for Addison, W. 1988 Codd,E. Norteamericana 7890 Relational Addison,W. 1990 Gardarin Francesa 12345 Basi Dati Paraninfo 1986 Gardarin Francesa 67890 Comp BD Eyrolles 1984 Valduriez Francesa 67890 Comp BD Eyrolles 1984 Kim,W. Norteamericana 11223 BD OO ACM 1989 Lochovsky Canadiense 11223 BD OO ACM 1989 Esta relación almacena datos de autores y de libros. Algunos problemas son: • Redundancia, ya que la nacionalidad del autor se repite por cada ocurrencia del mismo. Lo mismo sucede cuando un libro tiene mas de un autor, se repite la editorial y el año de publicación. • Anomalías de modificación, es fácil cambiar el nombre de una editorial en una tupla sin modificar el resto de las que corresponden al mismo libro, lo que da lugar a incoherencias. • Anomalías de inserción, ya que si queremos ingresar información de algún autor, del que no hubiera ningún libro en la base datos, no sería posible, ya que cod_libro es parte de la clave primaria de la relación (regla de integridad de la entidad). La inserción de un libro, que tiene dos autores obliga a insertar dos tuplas en la relación. • Anomalías de borrado, ya que si queremos eliminar un cierto libro, deberíamos perder los datos de su autor y viceversa. En los casos anteriores, se deja en manos del usuario manejar la integridad de la base de datos. Lo anterior sucede pues no se cumple un hecho básico de todo diseño: "Hechos distintos, deben almacenarse en objetos distintos" Una forma de evitar este tipo de problemas consiste en seguir la metodología propuesta en el curso, es decir, un riguroso diseño conceptual y un traspaso de éste al modelo relacional. Sin embargo, ante posibles dudas respecto a si un esquema relacional está correcto, aplicaremos a dicho esquema un método formal de análisis, que permita analizar errores y generar esquemas correctos. Esta es la teoría de la normalización.
  • 25. En el ejemplo anterior, el conjunto de las siguientes relaciones no presenta estos problemas: LIBRO( cod_libro, titulo, editorial, año ) AUTOR( nombre, nacionalidad ) ESCRIBE( cod_libro, nombre ) La normalización introduce una técnica formal para diseñar bases de datos relacionales, y permite mecanizar parte del proceso al disponer de algoritmos de normalización. Una observación importante, es que las anomalías antes descritas se producen en procesos de actualización y no en procesos de consulta. La normalización penaliza las consultas, al disminuir la eficiencia, ya que la normalización aumenta el nro. de relaciones presentes en la base de datos, por lo que una determinada consulta puede llevar consigo el acceso a varias tablas, lo que aumenta el costo de ésta. Tablas normalizadas: Libro Cod_libro Titulo Editorial Año 1 Database Addison 1990 2 SQL Stan Addison, W. 1986 3 Guide for Addison, W. 1988 4 Relational Addison,W. 1990 5 Basi Dati Paraninfo 1986 6 Comp BD Eyrolles 1984 7 Comp BD Eyrolles 1984 8 BD OO ACM 1989 Autor Nombre Nacionalidad Date, C. Norteamericana Codd,E. Norteamericana Gardarin Francesa Valduriez Francesa Kim,W. Norteamericana Lochovsky Canadiense Escribe Cod_libro Nombre 1 Date, C.
  • 26. 2 Date, C. 3 Date, C. 4 Codd,E. 5 Gardarin 6 Gardarin 7 Valduriez 8 Kim,W. 9 Lochovsky La normalización tiene como objetivo obtener esquemas relacionales que cumplan determinadas condiciones, a través de las formas normales: • Primera, segunda y tercera formas normales (1FN, 2FN, 3FN). – Codd 19701 • Forma normal de Boyce y Codd (FNBC). – Boyce – Codd 1974 • Cuarta Forma Normal. (4FN). – Fagin 1977 • Quinta Forma Normal. (5FN). – Fagin 1979 7. Investigar sobre la 4FN y 5FN. Primera Forma Normal (1FN). Fue introducida por Codd, en su primer trabajo. Es una restricción inherente al modelo relacional por lo que su cumplimiento es obligato io. Consiste en la prohibición de que en una relación existan grupos repetitivos, es decir, un atributo no puede tomar más de un valor del dominio subyacente. Segunda Forma Normal (2FN). Fue introducida por Codd. Una relación está en 2FN, si además de estar en 1FN, todos los atributos que información acerca de no forman parte de ninguna clave ca la clave completa, es decir que, cada didata suministran atributo no-clave es total y funcionalmente dependiente de TODA la clave primaria. 1 Como obligatoriedad del currículo, en este modulo se estudiara las formas normales 1FN, 2FN Y 3FN.
  • 27. Ejemplo usando 1FN y 2FN. A partir del diseño lógico, para la relación: PRESTAMO (num_socio, nombre_socio, cod_libro, fec_prest, editorial, país ) Las claves candidatas son: (num_socio, cod_libro) y (nombre_socio, cod_libro) Por lo tanto seleccionamos la primera opción: num_socio y cod_libro Se puede observar que ciertos atributos que no forman parte de las claves candidatas, tal como editorial, constituye información acerca del libro, pero no acerca de la clave completa (del socio también). Luego, la relación préstamo no se encuentra en 2FN. La solución es descomponer esta relación en las siguientes: Enunciado: PRESTAMO (num_socio, nombre_socio, cod_libro, fec_prest, editorial, país ) Optimizada a: PRESTAMO1( num_socio, cod_libro, nombre_socio, fec_prest ) LIBRO( cod_libro, editorial, país ) En la relación PRESTAMO1, los atributos que no forma parte de las claves candidatas es fec_prest y nombre_socio, suministra información acerca de la clave, pero nombre_socio es únicamente dependiente de num_socio y no de cod_libro, es decir que nombre_socio no depende TOTALMENTE de la clave primaria. Por loque no está en 2FN. Entonces la relación PRESTAMO1 quedaría así: SOCIO (num_socio, nombre_socio) PRESTAMO1 ( num_socio, cod_libro, fec_prest ) La relación LIBRO, la clave es cod_libro, y los dos atributos: editorial y país suministran información de la clave completa. Por lo tanto, está en 2FN. En fin, las tablas quedarían optimizadas en 1FN y 2FN así: SOCIO (num_socio, nombre_socio) LIBRO ( cod_libro, editorial, país ) PRESTAMO1 ( num_socio, cod_libro, fec_prest )
  • 28. Tercera Forma Normal (3FN). Propuesta por Codd. Una relación está en 3FN, si además de estar en 2FN, los atributos que no forman parte de ninguna clave candidata facilitan información sólo acerca de la(s) clave(s) y no acerca de otros atributos, es decir que ningún atributo no-clave de l atributo no-clave. relación es funcionalmente dependiente de algún otro Ejemplo usando 3FN. De las siguientes tablas optimizadas anteriormente a 1FN y 2FN: SOCIO(num_socio, nombre_socio) LIBRO( cod_libro, editorial, país ) PRESTAMO1( num_socio, cod_libro, fec_prest ) La relación PRESTAMO1 y LIBRO, contienen una sola column está en 3FN. no-clave por tanto En la relación LIBRO, el atributo país entrega información acerca de la editorial que publica el libro, es decir, que país depende de la columna no-clave editorial por lo que no está en 3FN. La solución es descomponerla en: EDITORIAL( editorial, país ), LIBRO1( cod_libro, editorial ) Que están en 3FN, ya que todo atributo no clave facilita información acerca de la Hasta ahora nuestro relaciones en 3FN: esquema relacional
  • 29. está compuesto por las siguientes
  • 30. SOCIO(num_socio, nombre_socio) EDITORIAL( editorial, país ), LIBRO1( cod_libro, editorial ) PRESTAMO1( num_socio, cod_libro, fec_prest ) Ejemplo completo usando las 3 normalizaciones. Ilustración 10 Datos a analizar la normalización 1FN. Ilustración 11 Area en donde no cumple la 1FN
  • 31. Ilustración 12 Resultado de 1FN a partir de la tabla inicial 2FN. Ilustración 13 Tabla que cumple la 2FN
  • 32. Ilustración 14 Tabla que no cumple la 2FN Ilustración 15 Resultado de realizar la 2FN 3FN.
  • 33. Ilustración 16 Tablas que cumplen la 3FN Ilustración 17 Tabla que no cumple la 3FN.
  • 34. Ilustración 18 Tabla normalizada a 3FN. Resultado final: Ilustración 19 Tabla inicial no normalizada.
  • 35. Ilustración 20 Resultado de aplicar la normalización. 1. Realizar con el docente el diseño lógico y verificar su normalización (1FN, 2FN y 3FN) del siguiente diseño conceptual: 2. Con la ayuda del docente, realizar el diseño lógico siguiente cuadro: y normalización del
  • 36. 3. En grupo de tres, realizar la normalización del siguiente esquema lógico: FACTURA (Numero_Fact, Fecha, Nombre_cliente, Cedula, cantidad, Cod_producto, detalle. Precio, Subtotal) 4. Presentar un informe individual con la ayuda del docente el diseño conceptual, lógico y normalización del siguiente enunciado: Consideremos la base de datos de personal de una empresa que tiene un conjunto de departamentos. Cada departamento tiene un conjunto de empleados, un conjunto de proyectos y un conjunto de oficinas. Cada empleado tiene una historia de salarios (El conjunto de salarios que ese empleado ha recibido ). Cada oficina tiene un conjunto de teléfonos. La base de datos debe contener la siguiente información: • Por cada departamento: número de departamento (único ), presupuesto y el número de empleado del gerente del departamento ( único ). • Por cada empleado: número de empleado ( único ), número de proyecto en el que actualmente trabaja, número de oficina y número de teléfono; más la fecha y salario para cada salario recibido en ese puesto. • Por cada proyecto: número de proyecto (único) y presupuesto. • Por cada oficina: número de oficina ( único ), superficie en metros cuadrados y números ( únicos ) de todos los teléfonos de esa oficina. Considere las siguientes suposiciones semánticas: • Ningún empleado es el gerente de más de un departamento a la vez. • Ningún empleado trabaja en más de un departamento a la vez. • Ningún empleado trabaja en más de un proyecto a la vez. • Ningún empleado ocupa en más de una oficina a la vez. • Ningún empleado tiene más de un teléfono a la vez. • Ningún proyecto está asignado a más de un departamento a la vez. • Ninguna oficina está asignada a más de un departamento a la vez. 5. Optimizar el diseño conceptual del ejercicio 3.1 de la actividad intraclase de la unidad anterior.
  • 37. UNIDAD N°4: ORGANIZACIÓN DE UN SISTEMA GESTOR DE BASE DE DATOS RELACIONAL. Competencia. Utiliza a partir de un análisis de las necesidades del entorno empresarial un sistema gestor de bases de datos (SGBD) determinado de una forma precisa. Sistema de Gestión de Bases de Datos. Como se menciono anteriormente un Sistema de Gestión de Bases de Datos (SGBD) es un Software de aplicación que permite extraer y almacenar información de un sistema de Bases de Datos, proporcionándolos seguridad, organización, independencia, integridad y consistencia en los datos, recuperación ante fallos del sistema, administración de la información. Una de las características de los SGBD es que permite co partir recursos en diferentes aplicaciones. En un Sistemas de bases de datos, todos los datos se integran en un único archivo físico o en un conjunto de archivos relacionados. Cualquier acceso a los datos solicitados por un usuario a través de una interfaz es ejecutado a través de un SGBD que es el Software que entiende y manipula la estructura lógica de los datos en el archivo. A finales de los 80 y principios de los 90 se han realizado algunos avances en el área de los SGBD, y quizás lo más significante, podría decirse la incursión de los SGBD en la Internet, en la que sistemas como los de Bancos, Instituciones de 1. ¿Cuáles son las características del modelado de datos? 2. Realiza una investigación referente al diseño lógico de datos de un modelo relacional y explica sus procedimientos de traspaso de un Diagrama Entidad – Relación (DER) a Diseño lógico. 3. Investiga y contesta las siguientes preguntas. a) ¿Qué es Sistemas de Información? b) ¿Qué son Archivos Planos? 4. ¿Qué es un Sistema de Bases de Datos?
  • 38. Seguridad Social, entre otros, utilizan este sistema.
  • 39. 1. Investigar en grupo de 3 personas una reseña histórica sobre los SGBD, considere: Fechas, fabricantes, nombres de los primeros SGBD, sus nuevas tendencias y evolución de los SGBD a través del tiempo. Para la exposición del texto expositivo siga las siguientes pautas: a. Investigar el contenido de diferentes fuentes b. Analizar el contenido investigado. c. Seleccionar las ideas principales. d. Investigar el significado de cada idea e. Elabore cuadros esquemáticos. f. Presentar el trabajo en plenaria. Se calificara informe, defensa y diapositivas. Ventajas de los SGBD. Usar SGBD para administrar información posee muchas ventajas: - Independencia de datos. - Eficiencia en el acceso a la información. - Integridad de los datos y su seguridad. - Acceso concurrente y recuperación ante fallos del sistema. - Menor tiempo en el desarrollo de aplicaciones. - Administración de la información, entre otros. Analizando las ventajas que ofrecen los SGBD, pareciera que siempre se necesite gestionar la información, y esta seria la opción mas alternativa, sin embargo esta no es la situación, ya que un SGBD es un software complejo, lo que implica que para aplicaciones pequeñas seguridades eficientes, o en las que no se requiera un control de usuarios, etc., lo mas racional es optar por otra alternativa, por ejemplo archivos planos. Otra razón para no utilizar SGBD es cuando se desarrolle aplicaciones que no sean soportados por lenguajes de consultas.
  • 40. Estructura de un SGBD. Los objetos de datos y las relaciones definidas en DER, proporcionan la base para el diseño de datos. En muchas aplicaciones de software, la arquitectura de datos tendrá una gran influencia sobre la arquitectura del software que debe procesarlo. Es por ello que existe muchos SGBD en el mercado, a continuación mostramos algunos de ellos:
  • 41. Ilustración 21 Oracle 9i. Ilustración 22 Microsoft SQL Server 2005.
  • 42. Ilustración 23 Mimer 9.2 Ilustración 24 Microsoft Office Access 2007.
  • 43. Ilustración 25 MySQL en PhpMyAdmin 2.11.6 Usuarios relacionados con los Sistemas de Bases de Datos. Los Sistemas de Bases de Datos al estar administrados por los SGBD, están asociados a una variedad de usuarios, con el objeto de atender la diversidad de tareas que se requiere para su desarrollo, administración y mantenimiento. - Usuarios Finales. - Programadores de Aplicaciones. - Administradores de sistemas de Bases de Datos. - Administradores de Redes de comunicaciones. - Implementadores.
  • 44. UNIDAD N° 5: LENGUAJE DE CONSULTA ESTRUCTURADO. SQL. Competencia. Distingue los componentes del lenguaje de consulta estructurado para aplicar organizada y eficazmente las formas de implementación de ba manera correcta y eficaz. es de datos de una Reseña histórica del SQL. Después de que el doctor Edgar Codd de la IBM en junio de 1977 publicara su artículo “Un modelo relacional de datos para grandes bancos de datos compartidos” delineando la teoría matemática de cómo la información podría almacenarse en tablas y manipularlas usando un sub-lenguaje de datos, la investigación dio lugar en los laboratorios de la IBM en California, EEUU para la implementación de un sub- lenguaje que se incorporar al modelo propuesto. Esto condujo a la creación de un modelo de datos relacional y del lenguaje de consulta estructurado denominado SQL (Structured Query Language). A principio se lo denomino SEQUEL (lenguaje de consulta en ingles estructurado) cuando en 1978 se la cambio por SQL, no obstante, siendo la IBM la precursora del desarrollo del SQL y del modelo relacional, es la corporación pone al mercado el primer producto comercial de SGBD que Oracle que en 1979 la denomino Oracle versión 1 y funcionaba lenguaje de consulta. en mini-computadoras e incluía la versión de SQL como Posteriormente en 1981 la IBM introduce su primer producto relacional comercial el SQL/DS. En 1985 se introduce el DB2 (Database 2). Una de las principales desventajas del modelo relacional, en s s primeros años de funcionamiento, respecto al modelo jerárquico y de red era la lentitud de respuesta Mencione 10 características sobre los SGBD. Listar de al menos 4 Programas Gestores de Bases de datos que se encuentra en el mercado. ¿Cuál es el papel que cumplen los administradores de sistemas de bases de datos?
  • 45. frente a cantidades voluminosas de información y acceso concurrente.
  • 46. 1. Prepareunpanelconeltema“EvolucióndelosSGBDOracle,Databasey SQL/DS ” Para el desarrollo del panel seguir la siguientes pautas: a. Recopilar el contenido de diferentes fuentes b. Presentar a los miembros del panel. c. Formular preguntas por cada estudiante. d. Responder a la pregunta planteada por uno de los integrantes. e. Continuar el dialogo f. Plantear otras preguntas pos parte del coordinador. g. Resumir brevemente el contenido expuesto. h. Sintetizar las exposiciones por parte del coordinador. i. Establecer un diálogo con los estudiantes. j. Analizar el contenido investigado. Se calificará informe, defensa oral y escrita. Característica del SQL. El SQL es un lenguaje de cuarta generación y está compuesto por una serie de sentencias en ingles estructuradas de alto nivel que sigue una sintaxis definida. Aunque el SQL significa lenguaje de consulta estructurado, el SQL es más que una herramienta de consulta, es: ➢ Lenguaje de definición de datos o LDD (DDL en ingles). ➢ Lenguaje de manipulación de datos o LMD (DML en ingles) . ➢ Lenguaje de control de datos o LCD (DCL en ingles). ➢ Lenguaje de consulta o LC (QL en ingles). Ilustración 26 Componentes del SQL. Por otro lado SQL no es un lenguaje de programación completo como el C++ o Visual Basic ya que no contienen bloques de sentencias de comienzo o fin (Begin- End), sentencias condicionales (if), sentencias de bucle (For, while, etc)2 2 Lo mencionado corresponde al SQL estándar. Los desarrolladores de SGBD añaden características procedimentales a sus productos.
  • 47. Adicionalmente, no es posible comprar el SQL como lo haría con otros lenguajes de programación como el Visual Estudio, Java Builder o C++, etc. Ya que este es parte embebida de los SGBD. Es por ello que el SQL no es considerado como un lenguaje de programación sino como un sub-lenguaje. A continuación se detalla un resumen de las características SQL. ✓ Independencia de los vendedores. ✓ Portabilidad a través de los sistemas informáticos. ✓ Consultas interactivas. ✓ Acceso de un sistema de bases de datos desde de programas. ✓ Lenguaje completo de bases de datos. ✓ Arquitectura cliente/servidor. más importantes del
  • 48. 1. Investigar individualmente sobre la notación BACKUS-NAUR FORM (BNF). Se calificara Informe y defensa escrita. 1. En grupo de 2 personas, realizar una investigación sobre un SGBD propuesto por el docente, considerar: 1.1. Exploración de objetos de la base de datos. 1.2. Barras de herramientas. (si posee) 1.3. Editor de sentencias SQL. 1.4. ¿En donde se almacenan las bases de datos? 1.5. ¿Cómo se crea una Base de Dato? Se calificará: informe ilustrado, recopilación del contenido desde diferentes fuentes diapositivas y defensa del tema. 2. Organice un panel sobre la información investigada en la actividad anterior. Para el desarrollo del mismo siga la siguiente secuencia: a. Formulación d el tema. b. Presentar a los miembros del panel. c. Formular preguntas por cada estudiante. d. Responder a la pregunta planteada por uno de los integrantes. e. Continuar el dialogo f. Plantear otras preguntas pos parte del coordinador. g. Resumir brevemente el contenido expuesto. h. Sintetizar las exposiciones por parte del coordinador. i. Establecer un diálogo con los estudiantes. j. Elaborar una conclusión del contenido investigado.
  • 49. UNIDAD N° 6: LENGUAJE DE DEFINICIÓN DE DATOS. LDD. Competencia. Utiliza el lenguaje de definición de datos para la implementación de bases de datos en los sistemas gestores de bases de datos Access y MySql precisión y pulcritud. con orden, respeto, En la unidad anterior se indico que el LDD en un componente del SQL. A como se estudio el LDD está compuesto por una serie de sentencias en ingles estructurado de alto nivel que siguen una sintaxis predefinida y normalizada. Misión del LDD. Es la encargada de la implantación de los objetos de un sistema de bases de datos, creación y administración, a través de un conjunto de sentencias SQL que utilizan las palabras reservadas: ✓ Crear un objeto en la base de datos (CREATE). ✓ Eliminar un objeto de la base de datos (DROP). ✓ Modificar un objeto de la base de datos (ALTER). ✓ Conceder privilegios sobre un objeto de la base de datos (GRANT). ✓ Eliminar privilegios sobre un objeto de la base de datos(REVOKE). Objetos de un Sistema de Bases de Datos. Los componentes de 1. Catálogos. 2. Esquemas. 3. Usuarios. un sistema de bases de datos 1. ¿Cuál es la diferencia entre dato y base de dato? 2. ¿Qué es el SQL? 3. ¿Cuál es el objetivo delo SQL? 4. ¿Cuáles son los lenguajes que forman parte del SQL? 5. Mencione 3 SGBD que usted conoce. 6. Para que se utiliza la notación BNF.
  • 50. 4. T a b l a s . 5. V i s t a s . 6. Í n d i c e s . son entre otros:
  • 51. Ilustración 27 Componente de un sistema de bases de datos y su relación.3 Tablas. Son los objetos que tratan directamente de la información a procesar. El modelo de datos relacional representa los datos y la asociación entre ellos, mediante una colección de relaciones o tablas, cada una de las cuales tiene un número de columnas con nombres únicos que definen un atributo que identifica a un dato común a almacenar, las tablas tienen a su vez filas que posee información de un registro en particular. Ilustración 28 Terminología utilizada por referirse a una tabla y sus elementos. 3 En este modulo mencionaremos el uso de las tablas e índices
  • 52. De los términos asociados a las tablas son: el grado y la cardinalidad, en donde el grado indica el número de columnas y la cardinalidad el número de filas. Es así, una tabla con cardinalidad cero es una tabla vacía, es decir, sin datos. Una tabla puede tener cero filas, pero no cero columnas, al menos deben tener una. Hay que considerar que el nombre de las tablas y columnas n un Sistema de Base de Datos y Tablas respectivamente. deben repetirse en Tipos de datos más utilizados. • Tipo CHAR, VARCHAR. • Tipo NUMBER • Tipo LONG • Tipo DATE 1. Relacionar si estos tipos de datos se utilizan en los SGBD Microsoft Access y en MySqL. Presente un informe grupal (Dos personas). Creación de Tablas. Para realizar la creación de Tablas, debemos considerar a un conjunto instrucciones denominados dentro del SQL como LDD (Lenguaje de definición de datos). La sintaxis para la creación de tablas dentro de la notación BNF es la siguiente: Ilustración 29 Sintaxis elemental para la creación de tablas. Así por ejemplo si se desea crear una tabla estudiante quedara así:
  • 53. Restricciones de Integridad. Un SGBD permite realizar una serie de controles sobre los objetos de los sistemas de bases de datos. Uno de estos controles es de impedir anomalías de la información que administra, por ejemplo, la redundancia de información. Uno de los mecanismos de este fin es el uso de las restricciones de integridad que se define cuando se crea el objeto o se modifica si el objeto esta en operación. Si analizamos la tabla ESTUDIANTE con la sentencia anterior, esta permitirá ingresar dos filas de datos con la misma información (redundancia). Para evitar este inconveniente, existe un mecanismo denominado: Restricción de la Clave Primaria. Una columna clave primaria PRIMARY KEY, es la(s) columnas que permiten identificar unívocamente cada fila en una tabla. Adicionalmente una columna clave primaria no permite que en sus columnas no tenga ningún valor o valor nulo en ninguna de sus filas. En el ejemplo de la tabla estudiante, la columna NÚMERO es la que permite identificar unívocamente cada fila y por lo tanto se la debe identificar como clave primaria para que el SGBD pueda ser el control respectivo. VíctorMartínezFalcones-http://avenetenterprise.web.officelive.com
  • 54. Si incluimos la restricción mencionada en la creación de la tabla la sintaxis quedaría de la siguiente manera: El ejemplo de la tabla ESTUDIANTE queda redefinido así:
  • 55. Restricción de valor No Nulo. La restricción de valor No Nulo (NOT NULL) le indica al SGBD que no ingrese un valor Null como valor, es decir, no permite que el registro de algún campo este en blanco. Restricción de Unicidad. La restricción de Unicidad (UNIQUE) le indica al SGBD que no permita que se ingrese o modifique una fila y de cómo resultado valores repetidos en la columna con esta restricción. Puede involucrar una o varias columnas. Restricción de Control de Rango de dominio. La restricción de Control de Rango de dominio (CHECK) le indica al SGBD que no permita que se incumpla lo que se estipule en la clausula CHECK cuando se ingrese o modifique una fila. Valor por Omisión. El valor por omisión (DEFAULT) le indica la SGBD que al momento de ingresar un dato en una determinada columna le asigne un valor preestablecido en dicha columna cuando no se ha establecido un valor en la inserción. La sintaxis con las restricciones de integridad expuestas anteriormente quedaría de la siguiente forma: Analicemos como podría ser la sentencia SQL que me permita la creación de la tabla PROFESOR con las siguientes características: Una sentencia como la que sigue me permite crear la tabla en estudio:
  • 56. Otro ejemplo seria: En este caso el campo Número y código poseen una claves primarias, al escribir la siguiente sentencia: Su semántica es correcta de acuerdo al esquema presentado, pero al ejecutarla nos dará error porque una tabla no puede tener DOS claves primarias. Lo que si es posible es que dos o más columnas sean LA clave primaria, cuando en este caso se denomina CLAVE PRIMARIA COMPUESTA. En este caso ocurriría una restricción de clave primaria a nivel de tabla. En donde su sintaxis sería la siguiente:
  • 57. Entonces la sentencia correcta para crear la tabla matricula seria la siguiente: 1. Diseñe individualmente un cuadro sinóptico referente a creación de tablas. las restricciones en la Modificación de tablas Se modifican las tablas por dos razones: Cambiando la definición de una columna (MODIFY) o añadiendo una columna a una tabla existente (ADD). La orden con la que se modifica una tabla es ALTER TABLE, cuyo formato es: ALTER TABLE <nombre_tabla> [ ADD (<columna1> [,<columna2> . . .)] ]
  • 58. O [ MODIFY (<columna1> [,<columna2> . . .)] ] [ ADD CONSTRAINTS <restriccion> ] [ DROP CONSTRAINTS <restriccion> ] Ejercicio resuelto con creación y modificación de tablas: Crear la tabla FABRICANTES y ARTÍCULO con las siguientes columnas y restricciones. Solución: Create table FABRICANTES ( cod_fabricante integer auto_increment primary key, ADD añade una columna o más al final de una tabla. MODIFY modifica una tabla o más columnas existentes en la tabla. ADD C NSTRAINTS añade una restricción a la definición de la tabla. DROP CONSTRAINTS elimina una restricción de la tabla.
  • 59. nombre varchar(50), pais varchar(20) default 'España', constraint nombre_mayus check(nombre=upper(nombre)), constraint pais_mayus check(pais=upper(pais))); Create table ARTICULOS ( cod_articulo int, cod_fabricante peso int, int, categoria varchar(20), primary key(cod_articulo,cod_fabricante,peso,categoria), constraint pre_venta check(precio_venta>0), constraint pre_costo check(precio_costo>0), constraint cat_categoria check(categoria in('Primera','Segunda','Tercera'))); Añadir la restricción de clave ajena a la columna COD_FABRICANTE de la tabla ARTICULOS para que referencie a la tabla FABRICANTES. Realiza un borrado en cascada. Alter table ARTICULOS add foreign key(cod_fabricante) references FABRICANTES(cod_fabricante); Supresión de tablas La orden DROP TABLE suprime una tabla de la base de datos. Cada usuario puede borrar sus propias tablas. El formato de dicha orden es: DROP TABLE <nombre_tabla> [CASCADE CONSTRAINTS] Tendremos que tener cuidado con intentar borrar tablas cuyas claves principales estén referenciadas como claves ajenas en otras tablas. Como por ejemplo, si tenemos dos tablas como: PROVINCIA (Código_Provincia, Nombre) EMPLEADO (Código_empleado, Nombres, apellidos, Dirección, Código_Provincia) 1. Ingrese las sentencias del ejemplo anterior en el SGBD y presentar un informe contestando las siguientes preguntas: a) ¿Qué dificultades obtuvo al momento de ejecutar los códigos? b) ¿Qué aparece en cada ejercicio luego de ejecutar el código sin errores? c) ¿Qué nuevos factores debe considerar para ingresar las sentencias SQL?
  • 60. Si intentásemos suprimir la tabla PROVINCIA: DROP TABLE PROVINCIAS Nos daría un error debido a que podrían existir clave(s) ajena haciendo referencia a esa clave(s) primaria, es decir, existe una restricción de clave ajena (clave foránea) en la tabla EMPLEADO que referencia a la clave primaria de la tabla PROVINCIA. Entonces, para borrar esta tabla hay que usar la opción CASCADE CONSTRAINTS, que suprimirá todas la tabla borrada. Ejemplo: restricciones de integridad que se refieran a claves de la DROP TABLE PROVINCIAS CASCADE CONSTRAINTS 1. Presente un informe individual ilustrado en la que detalle los pasos para crear, editar y eliminar tablas desde el sistema gestor de base de datos propuesto y explicado por el docente. Se calificara: imágenes, pasos detallados, conclusiones, recomendaciones y defensa. Índices. Uno de los objetivos de los índices es la de controlar la unicidad de los datos en las columnas. Dicho de otra manera un índice es como un índice de un libro que ayuda a encontrar la información mas eficientemente. Normalmente utilizan estructuras de arboles balanceados (B-Tree), para las páginas de los índices que utilizan punteros de sus registros a las filas de los datos.
  • 61. Ilustración 30 Estructura de los Índices. Aunque no está definido en el estándar SQL, casi todos los SGBD los utilizan. Normalmente, crean automáticamente un índice por cada tabla basada en su clave primaria. Los índices no solo proporciona ventajas, sino también desventajas, por lo que tendríamos que tener presente para decidir cuando son necesarios.
  • 62. Ilustración 31 Ventajas y desventajas de los índices. Creación, Modificación y Eliminación de Índices. Creación de índices. Al no estar estandarizado el uso de índices, cada SGBD utiliza su propia sintaxis, aunque la mayoría utiliza una estructura más o menos par grafica: cida a la siguiente Ilustración 32 Sintaxis para la creación de índices. Ejemplo: Ventajas. considerablemente. SereduceelnumerodefilasqueelSGBDdebe leer en una consulta. Desventajas. secundaria. Lasoperacionesdeingresoyeliminacion yaquenoeliminararegistrossolamente.
  • 63. Modificación de índices. A diferencia de la creación de índices, en la que los SGBD proveen de una sintaxis similar, no ocurre lo mismo con la modificación de estos. Mas aun, la mayoría de SGBD ni siquiera proveen de una sentencia para la modificación de índices. Entonces, la solución, seria eliminarlo primero y luego crear el índice nuevamente con el mismo nombre y las características deseadas. Eliminación de índices. Tenemos más opciones que para la creación de los mismos. Ilustración 33 Eliminación de Índices. Formato I. Ilustración 34 Eliminación de Índices. Formato II. Ejemplo:
  • 64. Crear una tabla llamada PELÍCULAS con los siguientes campos y restricciones. La clave primaria de esta tabla es el campo COD_PELÍCULA. Crea la tabla CLIENTES con los siguientes campos y restricciones: La clave primaria de esta tabla es el campo DNI_CLIENTE Crear las siguientes tablas: Crear una tabla llamada PERSONAS con los campos (dni, nombre, apellido1, apellido2). Crear una tabla llamada VEHICULOS con los campos (CodigoVehiculo, marca, modelo, cilindrada). Crear una tabla llamada PERSONAS_VEHICULOS con los campos (dni, CodigoVehiculo). Crear una tabla llamada FAMILIA con los campos (CodigoFamilia, DescripcionFamilia). Identificar las claves primarias de cada tabla y las claves foráneas teniendo en cuenta que 1 PERSONA puede tener 0 o varios VEHICULOS. 1 FAMILIA tendrá 2 o más componentes, 1 PERSONA puede pertenecer a 1 o a ninguna familia. Crear las siguientes tablas en MySQL especificando en cada una de ellas la clave primaria y ajena(s) en caso de que las haya. Se debe permitir la eliminación de registros en cascada.
  • 65. Del siguiente Diseño fisco de datos, realizar la creación de tablas: Sea el diseño lógico siguiente: TRABAJADOR (Id_t, nombre, apellidos, tarifa, oficio, id_supervisor) EDIFICIO (Id_E, dirección, tipo, nivel_calidad, categoría) ASIGNACION (Id_T, ID_E, fecha_inicio, numero_dias) Realizar la creación de tablas e ingresar al menos 3 registros en cada tabla.
  • 66. UNIDAD N° 7: LENGUAJE DE MANIPULACIÓN DE DATOS. Competencia. Utiliza el lenguaje de manipulación de datos para la implementación de bases de datos en los sistemas gestores de bases de datos Access y MySql con orden, respeto, precisión y pulcritud. En SQL92 la manipulación de datos se hace básicamente con las sentencias SELECT (seleccionar), UPDATE (actualizar), DELETE (borrar) e INSERT (insertar) que constituyen el lenguaje de manipulación de datos básico. INSERT. Inserta una o más filas nuevas dentro de la tabla especificada. Cuando se utilice la cláusula VALUES sólo se insertará una fila. INSERT INTO {<nombre de tabla>} [({<nombre de columna>},)] {VALUES ({<literal> | :<variable host> | NULL},) } Ejemplo usando sentencias INSERT. Se dispone de las siguientes tablas de datos EMPLE y DEPART: ¿Qué significa las siglas LDD? ¿Por qué es importante el uso correcto del LDD? ¿Cuáles son las sentencias del LDD? ¿Cuáles son los objetos que gestiona un SGBD? ¿Cuáles son los SGBD que usa para sus bases de datos? ¿Para que se usa el Power Designer?
  • 67. 1. Realizar su respectiva creación de tablas. Create table alumnos( expediente int(10) primary key, nombre varchar(50), localidad varchar(50), fecha_nac date, direccion varchar(50), curso int(2), nivel varchar(10), faltas int(3)); 2. Realizar la inserción de todos registros mostrados en la figura. Insert into alumnos values(123456,'Juan Miguel Soler Bakero','Murcia','1995/10/10','Gran v’a, 2, 4A',1,'ESO',15); Insert into alumnos values(654321,'Laura G—mez Fern‡ndez','Lorca','1994/10/05','Junterones, 10, 5B',2,'ESO',25); Insert into alumnos values(765432,'Beatriz Mart’nez Hern‡ndez','Murcia','1993/05/05','Plaza Mayor, 6, 3B',3,'ESO',5); Insert into alumnos values(987654,'Diego Mar’n Llorente','Alhama de Murcia','1990/03/06','Diego de la Cierva, 5, 7A',1,'BACHILLER',34); Insert into alumnos values(445544,'Juan Francisco Cano Riquelme','Murcia','1992/01/07','Plaza de Belluga, 3, 4A',4,'ESO',13); Insert into alumnos values(223322,'Raquel Riquelme Rubio','Lorca','1990/23/11','San Juan, 14, 3B',1,'BACHILLER',7);
  • 68. 1. Realizar la inserción de los 5 últimos registros de la tabla ALUMNOS. SELECT. Selecciona filas de una o más tablas. Su sintaxis:  SELECT [ALL | DISTINCT ] <lista de selección>  FROM { {<nombre de tabla>},  [WHERE <condición de búsqueda> ]  [GROUP BY {<nombre de columna> | <número de columna>},]  [[ORDER BY {{<nombre de columna | <número de DESC] }, ] | columna>} [ASC |  <lista de selección>::= {* | {<expresión> | <nombre de tabla>.<nombre tabla>.*} de columna> | <nombre de columna> | <nombre de La palabra clave DISTINCT indica que si existen filas idénticas, sólo se mostrará una de ellas. Ejemplo usando sentencias SELECT. Se dispone de las siguientes tablas de datos EMPLE y DEPART: 1. Ingrese las sentencias del ejemplo anterior en el SGBD y presentar un informe contestando las siguientes preguntas: a) ¿Qué dificultades obtuvo al momento de ejecutar los códigos? b) ¿Qué aparece en cada ejercicio luego de ejecutar el código sin errores? c) ¿Qué nuevos factores debe considerar para ingresar las sentencias SQL?
  • 69. 1. Realizar su respectiva creación de tablas. 2. Realizar la inserción de todos registros mostrados en la figura. 3. Realizar las siguientes consultas: 3.1. Mostrar el apellido, oficio y número de departamento de cada empleado. select apellido, oficio, dept_no from emple; 3.2. Mostrar todos los datos de todos los empleados. select * from emple; 3.3. Datos de los empleados ordenados por número de departamento descendentemente. select * from emple order by dept_no desc; 3.4. Datos de los empleados ordenados por número de departamento descendentemente y dentro de cada departamento ordenados por apellido ascendentemente. select * from emple order by dept_no desc, apellido; 3.5. Mostrar los datos de los empleados cuyo salario sea mayor que 2000000. Select * from emple where salario>2000000; 3.6. Mostrar los datos de los empleados cuyo oficio sea “ANALISTA”. select * from emple where oficio='ANALISTA' 3.7. Seleccionar el apellido y oficio de los empleados del departamento número 20. select apellido, oficio from emple where dept_no=20; 3.8. Mostrar los empleados cuyo departamento sea 10 y cuyo oficio sea “ANALISTA”. Ordenar el resultado por apellido. select * from emple where dept_no=10 and oficio='ANALISTA' order by apellido; 3.9. Ordenar los empleados por oficio, y dentro de oficio por apellido. select * from emple order by oficio, apellido
  • 70. 3.10. Mostrar los apellidos de los empleados cuyo oficio sea “VENDEDOR”, “ANALISTA” o “EMPLEADO”. select apellido from emple where ('VENDEDOR','ANALISTA','EMPLEADO'); oficio in 3.11. Mostrar los apellidos de los empleados cuyo oficio no sea ni “ANALISTA” ni “EMPLEADO”, y además tengan un salario mayor de 200000. select apel ido from emple where oficion not in ('ANALISTA','EMPLEADO') and salario>200000; 3.12. Obtener los apellidos de todos los empleados en minúscula. select lower(apellido) from emple; 3.13. Mostrar los datos de los empleados que hayan sido contratados en el año 1992. select * from emple where year(fecha_alt)=1992; 3.14. Mostrar los datos de los empleados del departamento 10 que no tengan comisión. select * from emple where dept_no=10 and comision is null; 1. De las tablas EMPLE y DEPART realizar las siguientes consultas: 1.1. Mostrar el número, nombre y localización de cada departamento. 1.2. Datos de los empleados ordenados por apellidos. 1.3. Mostrar todos los datos de los empleados ordenados por apellido. 1.4. Seleccionar los empleados cuyo oficio sea “VENDEDOR” Mostrar los datos ordenados por apellido. 1.5. Seleccionar de la tabla EMPLE los empleados cuyo apellido empiece por “A”. UPDATE. Modifica las columnas seleccionadas de una tabla en todas las filas que satisfacen una condición de búsqueda. UPDATE {<nombre de tabla>} SET {<nombre de columna> = {<expresión> | NULL}}, [WHERE <condición de búsqueda>] 1. Ingrese las sentencias del ejemplo anterior en el SGBD y presentar un informe contestando las siguientes preguntas: a) ¿Qué dificultades obtuvo al momento de ejecutar los códigos? b) ¿Qué aparece en cada ejercicio luego de ejecutar el código sin errores? c) ¿Qué nuevos factores debe considerar para ingresar las sentencias SQL?
  • 71. 1. Realizar su respectiva creación de tablas. 2. Realizar la inserción de todos registros mostrados en la figura. 3. Establecer el número de plazas de todos los hospitales a 250. Update HOSPITALES set num_plazas = 250 4. Poner en 2000 el número de plazas del hospital número 3. Update HOSPITALES set num_plazas=2000 where cod_hospital=3 5. Con una sentencia UPDATE dobla el número de plazas de los hospitales cuya letra empiece con “R”. Update HOSPITALES ‘R*’ set num_plazas = num_plazas*2 where nombre like 1. Cree 5 sentencias usando la clausula UPDATE en la tabla HOSPITALES anotando el enunciado correspondiente. DELETE Borra una o más filas de una tabla o vista. Si no se especifica la cláusula WHERE, se borran todas las filas de la tabla señalada en la cláusula FROM. Si se especifica la cláusula WHERE sólo serán borradas aquellas filas que hagan la condición de búsqueda verdadera. Su sintaxis: 1. Ingrese las sentencias del ejemplo anterior en el SGBD y presentar un informe contestando las siguientes preguntas: a) ¿Qué dificultades obtuvo al momento de ejecutar los códigos? b) ¿Qué aparece en cada ejercicio luego de ejecutar el código sin errores? c) ¿Qué nuevos factores debe considerar para ingresar las sentencias SQL?
  • 72. DELETE FROM {<nombre de tabla> } [WHERE <condición de búsqueda>]
  • 73. 1. Realizar su respectiva creación de tablas. 2. Realizar la inserción de todos registros mostrados en la figura. 3. Borrar el registro de la persona cuyo DNI es igual a “22233311”. Delete from PERSONA where dni = 22233311; 4. Borrar los registros de las personas con salario de 1900 y su función es de medico. Delete from PERSONA where salario = 1900 and function = ‘MEDICO’ 5. Borrar los registros de las personas que posean un salario entre 1200 a 1500 Delete from PERSONA where salario between 1200 to 6. Borrar todos los registros cuyos apellidos sean “Martínez Molina” 1500 Delete from PERSONA where apellidos like ‘Martínez Molina*’ 1. Cree 5 sentencias usando la clausula DELETE en la tabla PERSONAS anotando su enunciado correspondiente. 1. Ingrese las sentencias del ejemplo anterior en el SGBD y presentar un informe contestando las siguientes preguntas: a) ¿Qué dificultades obtuvo al momento de ejecutar los códigos? b) ¿Qué aparece en cada ejercicio luego de ejecutar el código sin errores? c) ¿Qué nuevos factores debe considerar para ingresar las sentencias SQL?
  • 74. UNIDAD N° 8: DESARROLLO DE UNA APLICACIÓN DE GESTIÓN. Competencia. Aplica los conocimientos de diseño, implementación de bases de datos y diseño de servicios de presentación en entornos gráficos para desarrollar una aplicación informática de gestión de una manera ágil, ordenada y eficiente. 1. Presentar un informe de tres personas sobre: ¿Cómo se obtiene un presupuesto económico de un software? Para el informe considere: Pasos para realizar el presupuesto, conclusiones y recomendaciones. Se calificará: Informe detallado, Defensa y diapositivas. 2. Organice una mesa redonda en la que se discutirá el tema: “¿Cómo se obtiene un presupuestoeconómicodeunsoftware?”.Paraeldesarrollodelamismaseguirla siguiente secuencia: a. Presentar a los participantes de la mesa. b. Señalar las normas de desarrollo del evento. c. Realizar las exposiciones con la participación de cada estudiante. d. Resumir el contenido expuesto por el moderador. e. Inicia el foro. f. Formular conclusiones. 1. Analizar las diapositivas con el tema “Desarrollo de una aplicación de gestión” presentadas por el docente. Seguir la siguientes pautas: a. Analizar el contenido investigado. b. Seleccionar las ideas principales. c. Investigar el significado de cada idea d. Sintetizar en oraciones las ideas principales. e. Realizar un resumen con las oraciones elaboradas. f. Presentar un informe detallado sobre la misma. Para el informe se considera los tópicos, conclusiones y recomendaciones. 1. ¿Qué es Visual Basic? 2. ¿Cuáles son las versiones que visual Basic tiene en el mercado? 3. ¿Qué relación tiene una base de datos con los sistemas informáticos? 4. ¿Qué relación tiene un SGBD con un lenguaje de programación? 5. ¿Por qué se considera el SQL como un sub-lenguaje? 6. ¿Por qué es importante enlazar una base de dato con una aplicación informática de gestión? 7. Listar las aplicaciones del Software.
  • 75. Informe de especificación de requisitos. Parte I. Identificación del Contexto. 1. Caratula. 2. Descripción de la institución. 3. Organigrama de la institución. 4. Antecedentes. 5. Árbol de problema sobre los procesos manuales y tediosos. 6. Procesos. 7. Entorno técnico. Parte II. Especificación de los Requisitos. 1. Necesidad y justificación del nuevo producto. 2. Objetos 2.1. Tablas de la Base de datos. 2.2. Formularios. 2.3. Reportes. 3. Procesos y funciones propuestos, clasificadas por: 3.1. Ingreso. 3.2. Consulta. 3.3. Búsqueda. 3.4. Actualizaciones. 3.5. Calculo. 3.6. Reporte. 3.7. Respaldo. 3.8. Seguridad. 4. Delimitación. 5. Modelado de datos. 5.1. Diagrama Contextual. 5.2. Diagrama Físico de datos. 6. Modelado funcional y flujo de la información. 7. Métrica basada en líneas de código. Parte III. Manual de Usuario. 1. Introducción. 2. Generalidades del sistema. 2.1. Requisitos de Hardware. 2.2. Requisitos de Software. 2.3. Instalación.
  • 76. 3. Descripción detallada del sistema. 3.1. Menú Principal. 3.2. Formularios en general. 4. Recomendaciones. 1. Presentar un informe detallado sobre la implantación de una base de datos con el lenguaje de programación y SGBD indicados por el docente. Para el informe considere: Ventanas capturadas, explicación y conclusiones y recomendaciones