You are on page 1of 25

“Apuntes de Fundamento de Base de Datos IV Semestre PROFESOR: Rubén Ávila Jardines”

TOLENTINO CARMONA JOSE ALBERTO I.S.C.

FUNDAMENTOS DE BASE DE DATOS

Unidad 1 Introducción a los sistemas de bases de datos

1.1 Sistemas Información y Bases de Datos

1.1.1 Concepto Sistema Información

1.1.2 Sistemas Información para Gestión y Toma de Decisiones

1.2 Sistemas de información para gestión y toma de decisiones

1.3 Sistemas de Bases de Datos y Aplicaciones

1.4 Sistemas de Bases de Datos contra Sistemas Archivos

1.5 Niveles Abstracción Base Datos

1.6 Usuarios Administradores Base Datos

1.7 Componentes Sistemas Bases Datos

1.8 Arquitectura Sistemas Bases Datos

Unidad 2 Modelo Entidad Relación Conceptos básicos

2.1.1 Entidad Base Datos

2.1.2 Relación Base Datos

2.2 Diagramas Entidad Relación ER

2.3 Diseño Esquema Base Datos

2.4 Lenguaje Modelado Unificado UML (Modelo Conceptual)


Unidad 3 Modelo Relacional

3.1 El Modelo Relacional

3.2 Algebra Relacional

Unidad 4 Introducción SQL

4.2 Estructura Básica Select Where

4.3 Funciones Agregación Group By Having

4.4 Consultas Múltiples Tablas

4.4.1 Sub consultas Tablas

4.4.2 Operadores Join

4.5 Manipulación Base de Datos Insert Update Delete

Unidad 5 Diseño de bases de datos relacionales

5.1 Diseño Esquemas Relacionales Bases Datos

5.1.1 Dependencias Funcionales

5.1.2 Anomalías Bases Datos

5.1.3 Descomposición Bases Datos

5.1.4 Formas Normales Bases Datos

5.2 Modelo ER Y Normalización

5.3 Reducción Esquema Er A Tablas

5.4 Análisis de un caso práctico

Unidad 6 Bases de datos relacionales orientadas a objetos

6.1 Relaciones Anidadas Bases Datos

6.2 Tipos Complejos Bases Datos

6.3 Herencia Bases Datos


6.4 Tipos Referencia Bases Datos

6.5 Consultas Tipos Complejos Bases Datos

6.6 Comparación entre Bases de Datos orientadas a objetos y las bases de


datos relacionales orientadas a objetos

Unidad 7 XML Antecedentes

7.2 Estructura Datos XML

7.3 Esquema Documentos XML

7.3.1 Definición Tipos de Documento DTD

7.3.2 Esquemas XML

7.4 Consulta Transformación XML

7.4.1 Xpath XML

7.4.3 Xsl XML

7.5 Almacenamiento Datos XML

7.6 Aplicaciones

Definición: Dato, Información, Sistema, Base de Datos


Dato (representación simbólica de algo): Unidad mínima de información, sin sentido en si misma pero que adquiere
significado en conjunción con otras procedentes de la misma aplicación.

Información (conjunto de datos organizados que expresan un mensaje): Conjunto organizado de datos que
constituyen un mensaje sobre un cierto fenómeno o ente.

NOTA: La parte más importante de la B.D. es que mantenga la información

Sistema: Es un conjunto de partes o elementos organizados y relacionadas que interactúan entre sí para lograr un
objetivo. Los sistemas reciben (entradas) datos puede ser físico o concreto o puede ser abstracto o conceptual
(software).
Definición: Base de Datos, Información, Sistema de información.
Base de Datos (conjunto de datos pertenecientes a un mismo contexto): Es un conjunto de datos pertenecientes a un
mismo contexto y almacenados sistemáticamente para su uso posterior. Están en formato digital que ofrece un
amplio rango de soluciones al problema de almacenar datos. Conjunto de información
relacionada entre sí que se encuentra almacenada y sirve para un objetivo especifico.

Información: Conjunto de elementos dinámicamente relacionados.

Sistema de información: Conjunto de datos dentro de un programa gestor de: datos, equipos, usuarios (personas).
Conjunto de elementos que interactúan entre sí con el fin de reunir almacenar y procesar datos para proporcionar
información útil, exacta y oportuna para respaldar las actividades de una organización sirviendo de apoyo para la
toma de decisiones.

UNIDAD II
Elementos de una tienda
Selecciona MODELO PROPUESTO POR PETER CHEN
Producto Cliente
Es una representación abstracta del mundo real

Vende surte Relación centrándose en su estructura lógica. Los


elementos principales de este modelo son:

Personal Proveedor

-ENTIDADES: Es aquel elemento u objeto del cual queremos guardar información

ENTIDADES FUERTES: Existen por sí mismas.


ENTIDADES DEBILES: Depende de la entidad fuerte

RELACION: -nombre -grado -tipo

COMPONENETES DE LAS ENTIDADES  Atributos

ENTIDAD RELACION

SISTEMA DE BASE DE DATOS vs SISTEMAS DE ARCHIVOS


BASE DE DATOS SISTEMA DE ARCHIVOS
Se mantiene en un único almacén de datos que se definen Cada usuario define e implementa los archivos requeridos
una sola vez y al cual muchos usuarios pueden acceder para una aplicación específica.
Naturaleza auto descriptiva de B.D´s: El sistema no solo La definición de los datos es parte de los programas de
contiene a la B.D. misma, sino también una definición o aplicación, por lo tanto dichos programas solo pueden trabajar
descripción completa de esta dicha información se almacena en una B.D. específica.
en el catalogo del sistema, la información del catalogo
determina métodos y describen la estructura de la B.D.
Separación entre programas y datos: Los programas de La estructura de los archivos de datos viene integrada en los
accesos del Gestor de Base de Datos deben ser programas de acceso así que cualquier modificación de la
independientes de cualquier archivo específico. La estructura estructura de un archivo puede requerir la modificación de
de los archivos de datos están en el catalogo aparte de los todos los programas que tienen acceso a dicho archivo.
programas de acceso.
Manejo de múltiples vistas de los datos: Cada uno de los En los sistemas de Archivos no existen diferentes vistas de
usuarios de la B.D. puede requerir una perspectiva o vista datos.
diferente a la misma.
Una vista puede ser subconjunto de la B.D. o contener datos
virtuales que se deriven de los archivos de la B.D. pero que no
estén almacenados explícitamente.
En otras palabras encontramos que los problemas más comunes son:

Dificultad de acceso de datos: Cuando un programa para utilizar la aplicación no existe.

Aislamiento de datos: Debido a que los datos están dispersos, los activos pueden estar en diferentes formatos.

Problemas de integridad: Los valores almacenados en la B.D. deben satisfacer ciertos tipos de restricciones de consistencia.

Problemas de atomicidad: Un sistema de una computadora como cualquier otro dispositivo mecánico o electrónico está sujeto a
fallo.

Anomalías al acceso concurrente: En tales sistemas un entorno de interacción de actualizaciones concurrentes puede dar lugar a
datos inconsistentes (concurrente = accesar al mismo tiempo)

Redundancia: Repetición de datos

Inconsistencia: El mismo dato pero escrito de otra manera

MODELO ENTIDAD RELACION:

E-R

-FUERTE -DEBIL-------------> -Monovalorados ó -Multivalorados

ATRIBUTOS

SIMPLES COMPUESTOS DERIVADOS

VALORES PERMITIDOS DOMINIO

CLAVE: Cuando el contenido o valor de un atributo, identifica unívocamente a una entidad

Vendedor Mercancía Cliente


Entidad Débil Entidad Fuerte Entidad Débil

Simple---------- Edad, Sexo

Cliente Nomb
Atributo Compuesto--- RFC, Nombre, Dirección RFC
re
Derivados----- Edad
Eda
Direcci
d
ón
Atributos: Características propias de una entidad Se
Teléfo
xo Fech
Cada atributo tiene un dominio no
a
Nac.
Nombre

Relación Grado Binaria, Ternaria, N-aria

Correspondencia 1-1, 1-M, M-1, M-M

Relación: Está compuesta por –nombre, -grado, -grupo, -tipo

-Super Clave RFC + Nombre + CURP

Atributo Simple Atributos Claves -Candidata RFC + CURP

-Principal RFC / CURP

PROFESOR
Entidad Debil

RFCmono/derivado
NombreCompuesto
EdadDerivado
SexoSimple
EDICION
DirecciónCompuesto
TeléfonoMultivaluado
CURPcompuesto
Clavemulti/derivado
LugarCompuesto
horarioSimple
FechaCompuesto/

SISTEMAS DE INFORMACION Y BASES DE DATOS

SISTEMA DE INFORMACION: Es un conjunto de elementos que interactúan entres si con el fin de reunir almacenar y procesar
datos para proporcionar información útil, exacta y oportuna para respaldar las actividades de una organización sirviendo de
apoyo para la toma de decisiones.

Una colección organizada, información y procesos de negocios diseñados para transformar entradas y salidas y lograr un
objetivo.

Información

SI Personas OBJETIVO Información útil

Almacenes

TIPOS DE SISTEMAS DE INFORMACION


TPS Transaction Processing System(Recursos humanos, nomina, logística)
OFFICE Soporte en oficinas(office, Excel)
KWS Sistema de conocimiento (ayuda a generar más conocimientos AUTOCAD)
DSS Sistema de apoyo a decisiones complejidad más elevada y sofisticada(reportes finitos)
MIS Proporcionan información para sistemas de soporte ejecutivo
ESS Son los que toman decisiones sin tomar en cuenta varios aspectos
BASES DE DATOS
Es un conjunto de información relacionada entre sí que se encuentra almacenada y sirve para un objetivo específico.

DatoSímbolo en el cual se representa algo.

SISTEMA GESTOR DE BASE DE DATOS


Es el software o conjunto de programas que sirven para administrar una B.D. (acces, visual, SQL, MYSQL, Oracle, Estas se
clasifican en libres y no libres)

SGBD LIBRES -POSTGRE SQL LICENCIA BSD.

-MY SQL LICENCIA DUAL DEPENDE DEL USO

-FIRE BIRD BASADA EN LAS VERSIONES 6 DE INTERBASE.

-SQLITE LICENCIA DOMINIO PUBLICO

SGBD NO LIBRE -ADVANTAGE DATABASE

-D BASE

-FILE MAKER

-FOX PRO

-IBM DB2 UNIVERSAL DATA (DB2 UDB)

-IBM INFOMIX

-INTERBASE DE CODE GEAR

CLASIFICACION SGBD } –LOGICO -USUARIOS

ELEMENTOS IMPORTANTES DE UNA BD´s } -SGBD -BASE DE DATOS

DESVENTAJAS Y VENTAJAS DE SISTEMA GESTOR DE BASE DE DATOS


-La manipulación de Datos más factible de manejar

-Más compleja de encontrar datos

-Se define una sola vez como se maneja un dato

-Compartir datos

-La seguridad solo el administrador puede hacer modificaciones

-Compartir información más factible

-No redundancia de información


-Carece de niveles abstracción

-Permite hacer búsquedas orientadas a necesidades específicas de los usuarios

-Manejo de múltiples vistas de datos

-Abstracción de datos

LOS NIVELES DE UNA ORGANIZACIÓN


-Nivel Operativo

-Nivel Táctico

-Nivel Estratégico

SISTEMA DE ARCHIVO
Es un conjunto de programas de aplicación en donde cada programa define sus propios archivos

DESVENTAJAS DE UN SISTEMA DE ARCHIVOS

-Separación y aislamiento de datos

-Dedicación de los datos

-Dependencia de los datos

-Formatos de archivos incompatibles

-No se incluían mecanismos de seguridad

-La recuperación en caso de fallos era nulo o inexistente

-El acceso a los archivos estaba restringido por un solo archivo podía ser visto por un usuario

CATALOGO DEL SISTEMA: Es la descripción de los datos, también se le conoce como metadatos

Ejemplo: Numero de cuenta:-tipo numérico, -15 dígitos, -es único, -no vacio

PROGRAMAS DE APLICACIÓN: Son programas informáticos que interactúan con la BD. Emitiendo las apropiadas solicitudes
en SQL dirigida al SGBD, Se puede escribir en cualquier lenguaje
INDEPENDCIA ENTRE PROGRAMAS Y DATOS: Cuando los datos se almacenan en el catalogo de SGBD separados de los
programas de aplicación

INDEPENCIA ENTRE PROGRAMAS Y OPERACIONES: La implementación y la operación se especifican por separado y


pueden modificarse sin afectar la interfaz

ABSTRACCION DE DATOS: Es la característica que permite la independencia de programas y datos y la independencia de


programas y operaciones.

NIVELES DE ABSTRACCION
*Nivel externo o vistas Solo describe una parte de la base de datos. Existen para simplificar su interaccion con el sistema.
Subesquemas

*Nievel conceptual o lógicos Describe que datos se almacenan en la base de datos y que relación existe esquemas conceptual
entre datos

*Nivel interno: Es como están almacenados los datos en (CD) físicos el ordenamiento en disco como lógico. Esquema interno.

VENTAJAS DE LOS NIVELES DE ABSTRACCION


Independecia lógica e Independecia de los datos

*Independecia Logica: Capacidad de modificar el esquema conceptual sin tener que alterar el nivel externo ni los programas de
aplicación.

*Independecia Fisica de los Datos: Capacidad de modificar el esquema interno sin tener que alterar el esquema conceptual con
los externos.

La arquitectura de BD se clasifica en:

Centralizados: Cuando se utiliza una sola maquina

Arquitectura Cliente-Servidor: Se tiene un servidor solicitudes a BD.

De BD. Arquitectura para paralelos

Para Base de Datos Distribuidas.

Arquitectura de Dos Capas Arquitectura de 3 Capas

Trabaja sobre una red local


.Usuario Ejem: Internet Explorer
Aplicación
usuario .Cliente de
aplicacion
RED Servidor
de
Sistema aplicación
BD.
Suben página

Cliente: Almacena el programa como peticiones con el usurio almacenando aplicaciones como vistas

Servidor: Solo utiliza la BD.

USUARIOS DE BASE DE DATOS


USUARIOS QUE INTERACTUAN DIRECTAMENTE CON UNA BD. (Administradores)

-Restringir accesos.
Directamente -Darles movimiento a la BD.
BD. -Definir esquema.
-Definir estructura y método de acceso.
Administradores -Realizar copias de seguridad de manera periodica.
BD. -Supervisar los datos.
-Modificacion de esquema y de la Organización Fisica.
-Concesión de autorización para el acceso de datos.
-Copias de seguridad de la BD. Periódicamente.
-Supervisar los trabajos que se ejecutan en la BD.
USUARIOS

BD. -Diseña BD.


-Identifica los elementos que se guardan.
Diseñador -Elegir estructuras apropiadas para presentar y almacenar datos.
BD. -Comprender las necesidades de los usuarios finales y presentar.
un diseño que satisfaga sus requerimientos.
-Desarrollar algunas vistas.

-Ocasiones: Muy pocas veces se meten a la BD.


Usuarios -Simple ó Parametrico: Siempre utilizan BD son paralelos que
finales. diseñan vistas.
-Autonomos: Crean agendas aprenden por si mismos

VISTAS (usuarios)

ABSTRACCION LOGICOS (analistas)

FISICOS (programador)

IDEA PENSAMIENTO
INGENUOS (no saben tanto de computo)

USUARIOS Programador

ESPECIALIZADOS Administradores

Sofisticados (los mas estudiados en lasBD.)

-Datos del ususario


-MetaDatos.
-BASES DE DATOS -Índices
-MetaDatos de Aplicación

-Herramientas de Diseño
-SISTEMA ADMINIS- -Utilerias de tiempo de ejecución
COMPONENTES TRADOR DE BD. -Motor del sistema Administrador

SISTEMA DE DB.

-Formas
-APLICASIONES -Consultas
DE BD. -Reportes
-Menus
-Programa de Aplicación

Realizar un modelo entidad relación de la dirección estatal de transito que desea un sistema que lleve la gestión de infracciones
aplicadas a los conductores que circulen en las 5 carreteras estatales
KM Vehic Licen
Rut
ulo cia
a
TRANSIT CARRETE CONDUCT
Cur
O RA OR p
Clav
Plac Direcc
e Nomb Telefo
as Ofici re ion Se
no
al xo
Desarrolle el diagrama E-R para gestionar los préstamos, ventas de una cadena de video club
Direcc Nomb
CURP ion re
Sexo

Telefo Emplea Re VIDEO Termi


no nta nal
Direcc
ion
Nomb
Telefo
re
no
Trab
Ve aja
nde Nomb
Cliente
re
Direcc
RFC
ion
Telefo
no

CONVERSION DE MODELO E - R A ALMACENARLO


Se pasan los archivos. Loa archivos de trabajo son los relacionales

Modelo Representar un sistema del mundo real

E-R

Modelo Representacion Estandar

Relacional

ANALISIS DE REQUERIMIENTOS
La etapa en que se estudian los requerimientos para verificar que estén correctamente adecuados a
las características mencionadas es conocida como Análisis de Requerimientos. En la misma se
enfocan e intentan solucionar las deficiencias que los requerimientos puedan tener.

ACTIVIDADES TECNICAS
1. Identificar Casos de Uso del sistema
Esta información se representa en un diagrama de casos de uso.

Cómo encontrar un actor?

• Identifique los usuarios del sistema


o Porqué se diseña el sistema?
o Cuáles son los actores que el sistema va a beneficiar?
o Qué actores van a interactuar directamente con el sistema? (actores primarios)
o Qué actores van a supervisar, mantener, recibir información del sistema? (actores secundarios)
• Identifique los roles que juegan esos usuarios desde el punto de vista del sistema

• Identifique otros sistemas con los cuales exista comunicación


Cómo encontrar un caso de uso?
Identifique las operaciones importantes del sistema a construir
Cuáles son las principales tareas de un actor?
Qué información tiene el actor que consultar, actualizar, modificar? Cómo?
Qué cambios del exterior debe informar el actor al sistema?
Qué información debe informársele al actor, con respecto a los cambios del sistema?

Cómo encontrar relaciones entre actores y casos de uso?


Identifique los casos de uso en los cuales se vé implicado un actor
Busque relaciones extends entre casos de uso

Qué casos de uso son similares, diferenciándose en la forma en la cual hacen algunas
operaciones?
Qué caso de uso redefine la forma en la cual se realiza una transacción dentro de otro caso de
uso?

Busque relaciones uses entre casos de uso

Que casos de uso son usados como transacciones de otros?

2. Dar detalle a los casos de uso descritos


Describir la información de entrada y salida de cada caso de uso

Descripción detallada del caso de uso

• Descripción textual de su objetivo


• Variantes posibles para realizar este caso de uso. Diagramas de interacción de detalle (de secuencia o
colaboración)

• Errores y excepciones posibles en el caso de uso


Relacionar el caso de uso con la interfaz a usuario que lo representa

Especificar el diálogo que da solución al caso de uso (ver definición de interfaz)

3. Definir una interfaz inicial del sistema (si es aplicable)


Dibujar las pantallas de interacción para los distintos actores-usuarios
Copiar el modelo mental del usuario
Revisar los elementos del modelo del mundo interesantes para el actor-usuario (Ver Modelo del Mundo)
Visualización típica de los elementos del modelo del mundo
Información relevante para el actor
Metáforas de interacción válidas

Especificar el diálogo que da solución a cada caso de uso que se soluciona con la interacción con esta interfaz.
Puede especificarse este diálogo de varias maneras, dependiendo de la complejidad de la interfaz definida (en
esta etapa se sugiere escoger el mínimo nivel de detalle posible, para dar más libertad de diseño en las etapas
posteriores):

1. Por medio de una descripción textual de su funcionamiento


2. Por medio de diagramas de interacción que muestren la secuencia de operaciones entre los objetos de
interfaz y los actores involucrados

3. Por medio de diagramas de estados, donde se muestre claramente los estados de la interfaz
Por medio de un prototipo funcional, en términos de la interacción con el usuario
Definir restricciones para la comunicación con actores y sistemas
Describir en el detalle del actor o de la relación con el caso de uso particular

UNIDAD III
MODELO RALCIONAL
-Desarrollado por Codd 1970.

-Aplica conceptos de Matematicas (algebra relacional) para los gestión de datos almacenados

-La estructura básica son: Tablas

-Su objetivo principal es mantener la independecia de la estructura lógico respecto al modo de almacenamiento.

TERMINOLOGIA

Tabla = representación tabular (plano)bidimensional de entidades y relaciones (se conocen en este modelo como “ralcion”)

Tupla= cada uno de los renglones de la tabla.

Definicion de Define estructura

Datos DDL

Gestor de Lenguajes Algebra relacional


BD. Manipulacion de

Datos DML Calculo relacional

DATOS  almacenan  RELACIONES  DESORDEN  ORDEN  INDICES

RELACION: Dado un conjunto de dominios, una relación es el producto cartesiano entre los dominios; Sean D1,D2,D3…Dn el
conjunto de dominios entonces la relación R < D1x D2x D3x…. Dnx

ATRIBUTO VALOR DOMINIO Atributos = edad, sexo,

NOMBRE EDAD SEXO Valor edad = 18,17,18,


VAN 18 M
Valor sexo = m,f,
UAN 17 F
OLETA 18 F Dominio edad = 17<X<18

Dominio sexo = {f,m}

PROYECCION

-USUARIOS SELECCION

OPERACIONES RENOMBRE

ALGEBRA

RELACIONAL UNION

-BINARIOS DIFERENCIA

PRODUCTO CARTESIANO

PRDUCTO CARTESIANO
El producto cartesiano de dos relaciones se escribe como:

y entrega una relación, cuyo esquema corresponde a una combinación de todas las tuplas de R con cada una de las tuplas de S,
y sus atributos corresponden a los de R seguidos por los de S.

Ejemplo:

Muestra una nueva relación, cuyo esquema contiene cada una de las tuplas de la relación Alumnos junto con las tuplas de la
relación Maestros, mostrando primero los atributos de la relación Alumnos seguidos por las tuplas de la relación Maestros.

Unión (∪)
La operación

retorna el conjunto de tuplas que están en R, o en S, o en ambas. R y S deben ser uniones compatibles.

Diferencia (-)

La diferencia de dos relaciones, R y S denotada por:

entrega todas aquellas tuplas que están en R, pero no en S. R y S deben ser uniones compatibles.

Estas operaciones son fundamentales en el sentido en que (1) todas las demás operaciones pueden ser expresadas como una
combinación de éstas y (2) ninguna de estas operaciones pueden ser omitidas sin que con ello se pierda información.

UML
El lenguaje para modelamiento unificado (UML), es un lenguaje para la especificación, visualización, construcción y
documentación de los artefactos de un proceso de sistema intensivo. Fue originalmente concebido por la Corporación Rational
Software y tres de los más prominentes métodologistas en la industria de la tecnología y sistemas de información: Grady Booch,
James Rumbaugh, y Ivar Jacobson ("The Three Amigos"). El lenguaje ha ganado un significante soporte de la industria de varias
organizaciones vía el consorcio de socios de UML y ha sido presentado al Object Management Group (OMG) y aprobado por
éste como un estándar (noviembre 17 de 1997).
Este documento desarrolla la definición de UML.
Permite analizar Software y Sistemas.

El UML se utiliza como el diagrama de clases

Diagrama de casos de uso.

Se emplean para visualizar el comportamiento del sistema, una parte de el o de una sola clase. De forma que se pueda conocer
como responde esa parte del sistema. El diagrama de uso es muy útil para definir como debería ser el comportamiento de una
parte del sistema, ya que solo especifica como deben comportarse y no como están implementadas las partes que define. Por
ello es un buen sistema de documentar partes del código que deban ser reutilizables por otros desarrolladores. El diagrama
también puede ser utilizado para que los expertos de dominio se comuniquen con los informáticos sin llegar a niveles de
complejidad. Un caso de uso especifica un requerimiento funcional, es decir indica esta parte debe hacer esto cuando pase esto.

En el diagrama nos encontramos con diferentes figuras que pueden mantener diversas relaciones entre ellas:

Casos de uso: representado por una elipse, cada caso de uso contiene un nombre, que indique su funcionalidad. Los casos
de uso pueden tener relaciones con otros caso de uso. Sus relaciones son:

Include: Representado por una flecha, en el diagrama de ejemplo podemos ver como un caso de uso, el de totalizar el
coste incluye a dos casos de uso.

Extends: Una relación de una caso de Uso A hacia un caso de uso B indica que el caso de uso B implementa la
funcionalidad del caso de uso A.

Generalization: Es la típica relación de herencia.

Actores: se representan por un muñeco. Sus relaciones son:

Communicates: Comunica un actor con un caso de uso, o con otro actor.


Parte del sistema (System boundary): Representado por un cuadro, identifica las diferentes partes del sistema y contiene los
casos de uso que la forman.

En este grafico encontramos tres casos de usos Crear producto utiliza Validar producto, y Crear pack productos es una
especialización de Crear productos.

Podemos emplear el diagrama de dos formas diferentes, para modelar el contexto de un sistema, y para modelar los requisitos
del sistema.

Modelado del contexto.

Se debe modelar la relación del sistema con los elementos externos, ya que son estos elementos los que forman el contexto del
sistema.

Los pasos a seguir son:

• Identificar los actores que interactúan con el sistema.


• Organizar a los actores.
• Especificar sus vías de comunicación con el sistema.
3.2 Modelado de requisitos.

La función principal, o la mas conocida del diagrama de casos de uso es documentar los requisitos del sistema, o de una parte
de el.

Los requisitos establecen un contrato entre el sistema y su exterior, definen lo que se espera que realice el sistema, sin definir su
funcionamiento interno. Es el paso siguiente al modelado del contexto, no indica relaciones entre autores, tan solo indica cuales
deben ser las funcionalidades (requisitos) del sistema. Se incorporan los casos de uso necesarios que no son visibles desde los
usuarios del sistema.

Para modelar los requisitos es recomendable:

• Establecer su contexto, para lo que también podemos usar un diagrama de casos de uso.
• Identificar las necesidades de los elementos del contexto (Actores).
• Nombrar esas necesidades, y darles forma de caso de uso.
• Identificar que casos de uso pueden ser especializaciones de otros, o buscar especializaciones comunes para los casos
de uso ya encontrados.

PRINCIPIOS BASICOS DE SQL


-Es un lenguaje para definir vistas

-Lenguaje para definir datos

-Define almacenamientos

DIALECTOS DE SQL
-Select coloms

-From tablename

-Order By key Asc


-Limit in

-insert into tablename

EJECUCION DE CONSULTA
-.Consulta en SQL  compilador

-Plan de ejecución de consulta

-Se puede recuperar usando  esplain querry

CONSULTAS Y BOFFER
-Procesador de consultas.

-Solicita fragmentos l administrador de buffer

-Fragmentos son índices, filas, etc.

-Administrador de buffer

-Usar la memoria

-Procesamiento de transacciones

-Control de concurrencias

-Registros y recuperación en caso de fallas

TRANSACCIONES
*REGISTRO Y RECUPERACION EN CASO DE FALLO:

-Cada cambio es almacenado separdamente.

-Se deshacen los cambios de las transacciones que se quedaron a medias.

*CONTROL DE CONCURRENCIA

-Bloquear y desbloquear tablas

*ATOMICIDAD

-Se ejecuta toda la transccion o nada

*CONSISTENCIA

-Antes y después de la transacción la base de datos esta consistente.


UNIDAD IV
SQL(normalizado Estándar)

Lenguajes de consulta estructurados

Algebra relacional

DML  Manipulacion de datos Calculo relacional

S.G.B.D.

DDL  Define estructura.

(Lenguaje de Definición de Datos)

DDL  CREATE  Utilizado para crear tablas, campos e índices.


DROP  Elimina tablas e índices
ALTER  Utilizado para modificar las tablas agregando campos o cambiando la definición de los
campos

(Manipulacion de Datos)

DML  SELECT  Utilizado para consultar registros de la B.D. que satisfaga un criterio
INSERT  Se utiliza para cargar lotes de datos en la B.D en una única operación
UPDATE  Utilizado para modificar los valores de los campos de registros especificado.
DELETE  Utilizado para eliminar registros de una tabla de una B.D.

UNIDAD V
NORMALIZACION

El proceso de normalización de bases de datos consiste en aplicar una serie de reglas a las relaciones obtenidas tras el
paso del modelo entidad-relación al modelo relacional.

-Las bases de datos relacionales se normalizan para:

-Evitar la redundancia de los datos.

-Evitar problemas de actualización de los datos en las tablas.

-Proteger la integridad de los datos.


En el modelo relacional es frecuente llamar tabla a una relación, aunque para que una tabla sea considerada como una
relación tiene que cumplir con algunas restricciones:

-Cada columna debe tener su nombre único.

-No puede haber dos filas iguales. No se permiten los duplicados.

-Todos los datos en una columna deben ser del mismo tipo.

Dependencia

Dependencia funcional

B es funcionalmente dependiente de A.

Una dependencia funcional es una conexión entre uno o más atributos. Por ejemplo si conocemos el valor de
FechaDeNacimiento podemos conocer el valor de Edad.

Las dependencias funcionales del sistema se escriben utilizando una flecha, de la siguiente manera:

FechaDeNacimiento Edad

Aquí a FechaDeNacimiento se le conoce como un determinante. Se puede leer de dos formas FechaDeNacimiento determina a
Edad o Edad es funcionalmente dependiente de FechaDeNacimiento. De la normalización (lógica) a la implementación (física o
real) puede ser sugerible tener éstas dependencias funcionales para lograr la eficiencia en las tablas.

Propiedades de la Dependencia funcional

Existen 3 axiomas de Armstrong:

Dependencia funcional Reflexiva

Si "y" está incluido en "x" entonces x y

Si la dirección o el nombre de una persona están incluidos en el DNI, entonces con el DNI podemos determinar la dirección o su
nombre.

Dependencia funcional Aumentativa

entonces

DNI nombre

DNI,dirección nombre,dirección

Si con el DNI se determina el nombre de una persona, entonces con el DNI más la dirección también se determina el nombre o
su dirección.
Dependencia funcional transitiva

Dependencia funcional transitiva.

Sean X, Y, Z tres atributos (o grupos de atributos) de la misma entidad. Si Y depende funcionalmente de X y Z de Y, pero X no
depende funcionalmente de Y, se dice entonces que Z depende transitivamente de X. Simbólicamente sería:

X Y Z entonces X Z

FechaDeNacimiento Edad

Edad Conducir

FechaDeNacimiento Edad Conducir

Entonces tenemos que FechaDeNacimiento determina a Edad y la Edad determina a Conducir, indirectamente podemos saber a
través de FechaDeNacimiento a Conducir

Formas Normales

Las formas normales son aplicadas a las tablas de una base de datos. Decir que una base de datos está en la forma normal N es
decir que todas sus tablas están en la forma normal N.

En general, las primeras tres formas normales son suficientes para cubrir las necesidades de la mayoría de las bases de datos.
El creador de estas 3 primeras formas normales (o reglas) fue Edgar F. Codd

Primera Forma Normal (1FN)

Una tabla está en Primera Forma Normal si:

• Todos los atributos son atómicos. Un atributo es atómico si los elementos del dominio son indivisibles, mínimos.
• La tabla contiene una clave primaria.
• La clave primaria no contiene atributos nulos.
• No debe de existir variación en el número de columnas.

Una columna no puede tener múltiples valores. Los datos son atómicos. (Si a cada valor de X le pertenece un valor de Y,
entonces a cada valor de Y le pertenece un valor de X)

Esta forma normal elimina los valores repetidos dentro de una BD

Segunda Forma Normal (2FN)

Independencia Funcional. Una relación está en 2FN si está en 1FN y si los atributos que no forman parte de ninguna clave
dependen de forma completa de la clave principal. Es decir que no existen dependencias parciales.

En otras palabras podríamos decir que la segunda forma normal está basada en el concepto de dependencia completamente
funcional. Una dependencia funcional es completamente funcional si al eliminar los atributos A de X significa que la
dependencia no es mantenida, esto es que A Є X, (X – {A}) -x-> Y. Una dependencia funcional es una dependencia
parcial si hay algunos atributos que pueden ser eliminados de X y la dependencia todavía se mantiene, esto es A Є X,
(X – {A}) -> Y.

Por ejemplo {DNI, ID_PROYECTO} HORAS_TRABAJO (con el DNI de un empleado y el ID de un proyecto sabemos cuántas
horas de trabajo por semana trabaja un empleado en dicho proyecto) es completamente dependiente dado que ni DNI
HORAS_TRABAJO ni ID_PROYECTO HORAS_TRABAJO mantienen la dependencia. Sin embargo {DNI, ID_PROYECTO}
NOMBRE_EMPLEADO es parcialmente dependiente dado que DNI NOMBRE_EMPLEADO mantiene la dependencia.
Tercera Forma Normal (3FN)

La tabla se encuentra en 3FN si es 2FN y si no existe ninguna dependencia funcional transitiva entre los atributos que no son
clave.

Un ejemplo de este concepto sería que, una dependencia funcional X->Y en un esquema de relación R es una dependencia
transitiva si hay un conjunto de atributos Z que no es un subconjunto de alguna clave de R, donde se mantiene X->Z y Z->Y.

Por ejemplo, la dependencia SSN->DMGRSSN es una dependencia transitiva en EMP_DEPT de la siguiente figura. Decimos
que la dependencia de DMGRSSN el atributo clave SSN es transitiva vía DNUMBER porque las dependencias
SSN→DNUMBER y DNUMBER→DMGRSSN son mantenidas, y DNUMBER no es un subconjunto de la clave de EMP_DEPT.
Intuitivamente, podemos ver que la dependencia de DMGRSSN sobre DNUMBER es indeseable en EMP_DEPT dado que
DNUMBER no es una clave de EMP_DEPT.

Forma normal de Boyce-Codd (FNBC)

La tabla se encuentra en FNBC si cada determinante, atributo que determina completamente a otro, es clave candidata. Deberá
registrarse de forma anillada ante la presencia de un intervalo seguido de una formalizacion perpetua, es decir las variantes
creadas, en una tabla no se llegaran a mostrar, si las ya planificadas, dejan de existir.

Cuarta Forma Normal (4FN)

Una tabla se encuentra en 4FN si, y sólo si, para cada una de sus dependencias múltiples no funcionales X->->Y, siendo X una
super-clave que, X es o una clave candidata o un conjunto de claves primarias.

Quinta Forma Normal (5FN)

Una tabla se encuentra en 5FN si:

• La tabla está en 4FN


• No existen relaciones de dependencias no triviales que no siguen los criterios de las claves. Una tabla que se encuentra
en la 4FN se dice que está en la 5FN si, y sólo si, cada relación de dependencia se encuentra definida por las claves
candidatas.

Relación = tabla o archivo

Tupla = registro, fila o renglón

Atributo = columna o campo

Clave = llave o código de identificación

Clave Candidata = superclave mínima

Clave Primaria = clave candidata elegida

Clave Ajena = clave externa o clave foránea

Clave Alternativa = clave secundaria

Dependencia Multivaluada = dependencia multivalor

RDBMS = Del inglés Relational Data Base Manager System que significa, Sistema Gestor de Bases de Datos Relacionales.

1FN = Significa, Primera Forma Normal o 1NF del inglés First Normal Form
UNIDAD VI
BASE DE DATOS RELACIOANLES ORIENTADA A OBJETOS

Los lenguajes de programación persistentes añaden la persistencia y otras características de las bases de datos a loa lenguajes
de programación existentes con sistemas de tipos orientados a objetos. Por el contrario, los modelos de datos relacionales
orientados a objetos extienden el modelo de datos relacional proporcionando un sistema de tipos mas rico que incluye la
programación

TIPOS COMPLEJOS DE BASE DE DATPOS

Las debilidades y limitaciones son:

- Pobre representación de las entidades del ‘mundo real’.

- Sobrecarga y poca riqueza semánticas.

- Soporte inadecuado para las restricciones de integridad y empresariales

- Estructura de datos homogénea

- Operaciones limitadas

- Dificultades para gestionar las consultas recursivas

- Desadaptación de impedancias

- Problemas asociados a la concurrencia, cambios en los esquemas y el inadecuado acceso navegacional.

- No ofrecen soporte para tipos definidos por el usuario (sólo dominios)

HERENCIA DE BASE DE DATOS

La herencia es un intento de adaptación de estos diagramas al paradigma orientado a objetos. La herencia es un tipo de relación
entre una entidad "padre" y una entidad "hijo". La entidad "hijo" hereda todos los atributos y relaciones de la entidad "padre". Por
tanto, no necesitan ser representadas dos veces en el diagrama. La relación de herencia se representa mediante un triángulo
interconectado por líneas a las entidades. La entidad conectada por el vértice superior del triángulo es la entidad "padre".
Solamente puede existir una entidad "padre" (herencia simple). Las entidades "hijo" se conectan por la base del triángulo.
UNIDAD VII
ANTECEDENTES DE XML

XML proviene de un lenguaje inventado por IBM en los años setenta, llamado GML (General Markup Language), que surgió por
la necesidad que tenía la empresa de almacenar grandes cantidades de información. Este lenguaje gustó a la ISO, por lo que en
1986 trabajaron para normalizarlo, creando SGML (Standard General Markup Language), capaz de adaptarse a un gran abanico
de problemas. A partir de él se han creado otros sistemas para almacenar información.

En el año 1989 Tim Berners Lee creó la web, y junto con ella el lenguaje HTML. Este lenguaje se definió en el marco de SGML y
fue de lejos la aplicación más conocida de este estándar. Los navegadores web sin embargo siempre han puesto pocas
exigencias al código HTML que interpretan y así las páginas web son caóticas y no cumplen con la sintaxis. Estas páginas web
dependen fuertemente de una forma específica de lidiar con los errores y las ambigüedades, lo que hace a las páginas más
frágiles y a los navegadores más complejos.

Otra limitación de SGML es que cada documento pertenece a un vocabulario fijo, establecido por el DTD. No se pueden combinar
elementos de diferentes vocabularios. Asimismo es imposible para un intérprete (por ejemplo un navegador) analizar el
documento sin tener conocimiento de su gramática (del DTD). Por ejemplo, el navegador sabe que antes de una etiqueta <div>
debe haberse cerrado cualquier <p> previamente abierto. Los navegadores resolvieron esto incluyendo lógica ad hoc para el
HTML, en vez de incluir un analizador genérico. Ambas opciones de todos modos son muy complejas para los navegadores. Se
buscó entonces definir un subconjunto del SGML que permita:
* Mezclar elementos de diferentes lenguajes. Es decir que los lenguajes sean extensibles.
* La creación de analizadores simples, sin ninguna lógica especial para cada lenguaje.
* Empezar de cero y hacer hincapié en que no se acepte nunca un documento con errores de sintaxis.

Para hacer esto XML deja de lado muchas características de SGML que estaban pensadas para facilitar la escritura manual de
documentos. XML en cambio está orientado a hacer las cosas más sencillas para los programas automáticos que necesiten
interpretar el documento.

Ventajas del XML Es extensible, lo que quiere decir que una vez diseñado un lenguaje y puesto en producción, igual es posible
extenderlo con la adición de nuevas etiquetas de manera de que los antiguos consumidores de la vieja versión todavía puedan
entender el nuevo formato. El analizador es un componente estándar, no es necesario crear un analizador específico para cada
lenguaje. Esto posibilita el empleo de uno de los tantos disponibles. De esta manera se evitan bugs y se acelera el desarrollo de
la aplicación. Si un tercero decide usar un documento creado en XML, es sencillo entender su estructura y procesarlo. Mejora la
compatibilidad entre aplicaciones.

Estructura de un documento XML La tecnología XML busca dar solución al problema de expresar información estructurada de la
manera más abstracta y reutilizable posible. Que la información sea estructurada quiere decir que se compone de partes bien
definidas, y que esas partes se componen a su vez de otras partes. Entonces se tiene un árbol de pedazos de información.
Ejemplos son un tema musical, que se compone de compases, que están formados a su vez con notas. Estas partes se llaman
elementos, y se las señala mediante etiquetas.

Una etiqueta consiste en una marca hecha en el documento, que señala una porción de este como un elemento, un pedazo de
información con un sentido claro y definido. Las etiquetas tienen la forma <nombre>, donde nombre es el nombre del elemento
que se está señalando.

You might also like