SlideShare una empresa de Scribd logo
1 de 13
Descargar para leer sin conexión
PROGRAMACIÓN ORIENTADA A OBJETOS
PROGRAMACIÓN ORIENTADA A OBJETOS
APLICADA A BASES DE DATOS
APLICADA A BASES DE DATOS

Por
LAURA NOUSSAN LETTRY

SISTEMAS DE BASES DE DATOS RELACIONALES
Parte 1

Aviso Legal
El presente libro electrónico
se distribuye bajo
Attribution-NonCommercialNoDerivs 3.0 Unported
POO APLICADA A BASES DE DATOS

ÍNDICE

SISTEMAS DE BASES DE DATOS RELACIONALES – PARTE 1
Introducción
1. Concepto de Base de Datos
2. Clasificación de Base de Datos.
3. Diseño Lógico y Normalización. Concepto de Diseño Lógico. Normalización:
1º, 2º y 3º Forma Normal. Claves Primarias, Claves foráneas.

4. Diseño Lógico y Físico de una base de datos. Casos Prácticos

1
2
4
6

FUENTES Bibliográficas Consultadas
1. C.J. DATE, Introducción a los SISTEMAS DE BASES DE DATOS 7ª Edición
(Person Educacion, 2001, México)
2. SAROKA, Raúl Horacio, Sistemas de Información en la Era Digital
(Capítulos I y II, ebook, Fundación OSDE 2002)

BIBLIOGRAFÍA para el Alumno
1.

Contenidos de esta Unidad

2.

SAROKA, Raúl Horacio, Sistemas de Información en la Era Digital
(Capítulo 2, ebook, Fundación OSDE 2002)

3.

Software necesario: Procesador de Texto y/o Planilla de Cálculo

(*)

ACTIVIDADES
Unidad 1

Punto 1

Tareas
Lectura, trabajos, prácticas propuestas en el Website de la Materia.

(*): En el Website de la materia:
http://www.lnoussanl.com.ar/java&bd
http://www.lnoussanl.com.ar/javabd/
POO APLICADA A BASES DE DATOS

SISTEMAS DE BASES DE DATOS RELACIONALES – PARTE 1
INTRODUCCIÓN
Los Sistemas de Bases de Datos están presentes en toda actividad y en toda
organización. El mundo actual, con el comercio electrónico, depende de ellos.
Los Sistemas de Bases de Datos que abordaremos son los RDBMS (Sistemas
de Bases de Datos Relacionales) que se basan en el álgebra relacional y que
ciertamente son claros dominadores, aún con los cambios tecnológicos que se
vienen produciendo en las últimas décadas y que han hecho que los mismos se
extiendan para poder dar sustento a los objetos.
Estos sistemas están en la base de la Pirámide Organizacional puesto que son
utilizados a diario para llevar a cabo las operaciones diarias de las
organizaciones. Los podemos encontrar en pequeñas, medianas y grandes
empresas y organizaciones.
Como veremos también, de esa base en la pirámide se va subiendo a otros
niveles donde aparecen otros tipos de sistemas de información, hasta llegar al
nivel más elevado; sin embargo, en estos niveles inclusive, la importancia de
los sistemas operaciones, es fundamental ya que es, tal vez, la fuente de
información más importante para los Sistemas de Apoyo a la Toma de
Decisiones y los Sistemas de Nivel Superior.
POO APLICADA A BASES DE DATOS

y

SISTEMAS DE BASES DE DATOS RELACIONALES
CONCEPTO DE BASE DE DATOS

Le
ttr

En primer lugar lo fundamental es entender qué es una base de datos y cómo funciona. Nos interesa este
concepto porque si bien el programa trata las Bases de Datos en Visual Basic los conceptos teóricos y
prácticos sobre este tema en particular sirven incluso para su utilización y aprovechamiento con otros
lenguajes de programación y de diseño de software que permiten manipular datos.

El fin básico de una Base de Datos
tiene es almacenar información

que tiene valor desde algún
punto
de
vista
para
su
propietario. La siguiente imagen

an

indica la diferencia entre un Sistema
de Base de Datos y otros Sistemas de
almacenamiento de información. .

ou

•
•
•

las Bases de Datos nos
Figura 1
permiten compartir datos e
información;
entre distintas aplicaciones y distintos tipos de usuarios;
haciendo que la información esté disponibles en forma rápida;
y fundamentalmente restringida a quienes debe y pueden tener acceso a ella.

aN

•

ss

Los Sistemas de Bases de Datos han
tenido un gran auge en los últimos
años y ello se debe a sus ventajas en
relación a los sistemas que se basan
en Archivos como el Excel, por
ejemplo. Las ventajas se resumen y
explican seguidamente:

Aquí no se trata de que un usuario decide compartir sus datos con otros sino más bien de que existe una

política empresaria que decide qué datos estarán accesibles, en qué forma y en qué nivel de acceso
a los diferentes usuarios.

ur

Cuando realmente existe dicha política en una organización la misma se ve reflejada en la práctica en la
existencia de una persona, el Administrador de Bases de Datos o DBA, que en base a esa
política o visión de negocio configura la Base de Datos en vista a sus objetivos.
También existe un administrador por software que se llama habitualmente Sistema Administrador

de Bases de Datos o DBMS.

Pr

of.

La

En las bases de datos tenemos una serie de archivos relacionados entre sí que se llaman tablas. Además
estos sistemas permiten establecer un orden de accesos a la información teniendo en cuenta la jerarquía
del personal de la empresa. De esta forma la seguridad es fundamental y con ello se consigue compartir
los datos pero también restringir su acceso. Por ejemplo, un empleado de almacenes debe poder
consultar los datos de los artículos y mercaderías pero no debería por qué tener acceso a los datos de los
sueldos del personal. Por otro lado la información puede estar disponible en forma muy rápida mediante
la ejecución de consultas sobre la base de datos. Todo lo referente al manejo de archivos está gestionado
por el Sistema Administrador de la Base de Datos (software) y por el Administrador de la Base de Datos
(un ingeniero, analista de sistemas).
an

Le
ttr

y

POO APLICADA A BASES DE DATOS

ss

Figura 2

ou

Estos sistemas de Bases de Datos tienen éxito en la medida que estén bien diseñados y en la medida que
el Sistema se adapte a las necesidades de la empresa. Por ejemplo, en empresas grandes una Base de
Datos como Access, por poner un ejemplo, no resulta del todo óptimo debido a que se necesita un
sistema más potente que pueda manejar en manera óptima la gran cantidad de operaciones diarias que
estas empresas requieren. Además los costos aumentan a medida que el Sistema de Base de Datos es
más potente y estos costos no sólo tienen que ver con la compra del sistema sino con su mantenimiento.

CLASIFICACIÓN

aN

Un aspecto fundamental para conseguir concomitantemente los objetivos de utilidad, rapidez, seguridad
e integridad de los datos es mediante un buen diseño lógico mediante la normalización de las tablas.

Podemos hacer una clasificación de Sistemas de Bases de Datos teniendo en cuenta su concepción
intrínseca; de esta forma podemos decir que existen los tres tipos vistos en la primera imagen:

•

RDBMS: Sistema Administrador de Bases de Datos Relacional o Bases de Datos Relacionales;
ORDBMS: Sistema Administrador de Bases de Datos Objeto Relacional o Bases de Datos Objeto
Relacionales;
OODBMS: Sistema Administrador de Bases de Datos Orientados a Objeto o Bases de Datos
Orientadas a Objeto.

ur

•
•

La

Los sistemas de bases de datos que actualmente existen son los Relaciones u Objeto Relacionales, ya que
los orientados a objeto no han tenido éxito. Así tenemos a DB2 (de IBM), Oracle, MySQL, Postgress,
Access, etc.
Están basados en la lógica del álgebra relacional y por lo tanto, cualquier diseño físico corresponderá a un
previo diseño lógico que deberá ser consistente con su sustento teórico. Para ello es necesario que se
cumplan ciertos requisitos:
El diseño lógico es siempre independiente del tipo de aplicación, esto quiere decir que no interesa
si la base de datos es operacional o es para apoyo a la toma de decisiones. Inclusive no debería
haber mayores discrepancias entre un sistema comercial u otro.
Las tablas que forman la Base de Datos deben estar normalizadas ya que es el requisito
necesario para que puedan aplicarse las operaciones relacionales.
Como consecuencia de ello deben poder establecerse reglas de integridad. Por integridad debe
entenderse no sólo mantener la consistencia de los datos (el pegamento, si se quiere entre las
tablas), sino también definir el significado de las tablas y de la base de datos en su totalidad.

of.

•

•

Pr

•

La importancia del modelo lógico es tal, que los cambios en el sistema físico deberían siempre amoldarse
a éste. En realidad el modelo físico puede cambiar sin cambiarse el modelo lógico cuando cuestiones de
almacenamiento y eficiencia así lo indiquen.
POO APLICADA A BASES DE DATOS

Sistemas Operacionales;
Sistemas para el apoyo a la toma de decisiones.

aN

ou

ss

an

Le
ttr

•
•

y

Otra clasificación tiene en cuenta el uso del Sistema de Bases de Datos:

Figura 3

Los Sistemas de Bases de Datos Operacionales son aquellos que sirven de base para llevar las
operaciones diarias de las empresas y organizaciones. En cambio los Sistemas de Apoyo a la Toma
de Decisiones son sistemas que ayudan en el análisis de información de negocios.

ur

Las bases de datos para la toma de decisiones tienen ciertas características propias. En general puede
decirse que son prácticamente de sólo lectura. Cada tanto se hacen actualizaciones pero que consisten
básicamente en INSERTs (casi nunca DELETEs y menos aún UPDATEs). Esto se debe a que se basan e las
bases de datos operacionales que cada tanto son almacenadas en un repositorio para no perder la
información histórica. Además suelen ser bases de datos grandes.

of.

La

Los sistemas operacionales en cambio suelen ser bases de datos no tan grandes puesto que las
cuestiones relativas al rendimiento son fundamentales, las cargas de datos (que involucran INSERTs,
UPDATEs y DELETEs o altas, bajas y modificaciones) son generalmente predecibles y de gran volumen,
de allí la importancia de que no estén sobrecargadas con datos de ejercicios anteriores; motivo por el
cual suele guardarse sólo los datos del ejercicio actual y los de los ejercicios anteriores enviarse a un
repositorio, que es en definitiva otra base de datos, fuente juntamente con bases de datos externas de la
información que se utilizará en los niveles intermedios y superiores de la organización para la toma de
decisiones.
Así para los Sistemas de Apoyo a la Toma de Decisiones tenemos bases de datos especiales como son los

Data Warehouse, los Data Marts, etc.

Pr

Un Data Warehouse es una base de datos orientada a un tema, integrado y no volátil (quiere decir
que una vez insertados los datos no pueden ser cambiados aunque sí borrados). Surgieron para prestar
información específica sobre un tema teniendo una fuente única de información y para no afectar a la
base de datos operacional.
En general un Data Warehouse está pensado para proporcionar una fuente de datos única a todas las
actividades de apoyo a la toma de decisiones. En cambio, los Data Marts consideran un subconjunto,
POO APLICADA A BASES DE DATOS

y

es decir son almacenes de datos especializados orientados a un tema, integrado, no volátil pero para
apoyar a un subconjunto específico de decisiones de administración.

Le
ttr

Asimismo cuentan con un Nivel Analítico que permite sacar conclusiones para la toma de decisiones.

En resumen un Sistema BI (Sistema de Inteligencia de Negocio) está conformado de la siguiente
manera:
Los Sistemas BI permiten capturar datos de los sistemas de nivel operativo (OLTP, ERP, externos;
sistemas que llevan a cabo decisiones repetitivas y rutinarias) para construir un repositorio de datos
llamado Data Warehouse. Este almacén puede estar formado por diferentes Data Marts o almacenes de
datos para distintos temas específicos. Las distintas metodologías de análisis de datos (OLAP, Minería de
datos, etc.) brindan a los usuarios finales la información necesaria que requieren para la toma de
decisiones no estructuradas.

Diseño Lógico o Conceptual de una Base de Datos

an

DISEÑO LÓGICO Y NORMALIZACIÓN - Repaso de conceptos fundamentales

ss

El diseño conceptual tiende a identificar las entidades y relaciones existentes, aplicación de las reglas de
normalización, de nombres inequívocos para los atributos de las entidades, establecimiento de reglas de
integridad, etc.

ou

Conceptualmente la Base de Datos se diseña por medio de un DER (Diagrama de Entidad-Relación), que
se lleva a un MER (Modelo de Entidad-Relación), y un Diccionario de Datos Elemental (se especifica en el
modelo el detalle conceptual de las entidades y relaciones; es decir cuál es su función u objetivo; Los
elementos de datos o atributos necesarios y las reglas de integridad básicas para la base de datos).
Además, hay que tener en cuenta, que al normalizar el diseño, necesariamente las relaciones van a
establecerse por medio de tablas y vínculos entre éstas.

Normalización

aN

Es muy importante no olvidar que el diseño lógico o conceptual de una Base de Datos debe ser
independiente del diseño físico. Es decir, el diseño lógico debería poder aplicarse para cualquier DBMS
(Oracle, DB2, MySQL, Access, etc.) sin alteraciones en su lógica, mientras que el diseño físico; es decir
cómo se va a implementar este diseño lógico sobre el hardware puede ser distinto según las
funcionalidades de cada DBMS o incluso variar en el tiempo en una misma organización dependiendo de
factores como acceso a la base de datos, costo de mantenimiento, velocidad de accesos, etc. Por ejemplo
la base de datos podría estar alojada en tres servidores distintos dependiendo de la performance que se
necesite, pero el diseño lógico debería seguir siendo el mismo.

ur

Las tablas que forman la Base de Datos deben estar normalizadas ya que es el requisito necesario para
que pueda aplicarse el álgebra relacional y sus operaciones.

La

La normalización consiste en establecer lo que se conoce como reglas de integridad. De esta forma se
pueden aplicar las operaciones relacionales obteniendo los resultados que prevé el álgebra relacional y no
cualquier otro. Algunas operaciones relacionales se efectúan sobre una misma tabla y otras sobre un
conjunto. Por ejemplo, sobre una misma tabla: seleccionar, proyectar , restringir; sobre conjuntos (sobre
más de una tabla): unión, intersección y diferencia entre conjuntos. En SQL a estas operaciones se las
halla definidas en lo que se conoce como DML o Lenguaje de Manipulación de Datos.

of.

Por integridad debería entenderse que no sólo implica mantener la consistencia de los datos (el
pegamento, si se quiere entre las tablas), sino también definir el significado de las tablas y de la base de
datos en su totalidad; es decir su diseño lógico. En SQL estas definiciones están representadas por lo que
se conoce como DDL o Lenguaje de Definición de Datos y permite crear las tablas con sus atributos, tipos
de datos y restricciones de integridad.

Pr

Con las tres primeras formas normales se alcanzarían estos objetivos. Estas tres formas normales fueron
propuestas por Edgard Frank Codd y se basan el cálculo relacional.
Aquí debemos aclarar cuál es la correspondencia entre la terminología relacional y la utilizada en los
distintos sistemas comerciales, ya que no es la misma:

•
•
•

Relación = tabla
Tupla = fila o registro
Atributo = columna o campo
•
•
•

Clave = llave o código de identificación
Clave Primaria = es la superclave. [PRIMARY KEY en SQL]
Clave Ajena = es una clave externa o clave foránea [FOREIGN KEY en SQL]

y

POO APLICADA A BASES DE DATOS

Le
ttr

Primera forma Normal (1FN): siguiendo a J.C. Date, una tabla está en primera forma normal sí y sólo si
es isomorfa a alguna relación. Lo cual significa que la tabla debe cumplir los siguientes requisitos:
1.
2.
3.
4.

No hay orden de arriba-a-abajo en las filas.
No hay orden de izquierda-a-derecha en las columnas.
No hay filas duplicadas.
Cada intersección de fila-y-columna contiene exactamente un valor del dominio aplicable (y nada
más).
5. Todas las columnas son regulares [es decir, las filas no tienen componentes como IDs de fila, IDs
de objeto, o timestamps ocultos].

•

ss

o

o

Una clave primaria es aquella columna (pueden ser también dos columnas o más) que
identifica únicamente a esa fila. La clave primaria es un identificador, y por lo tanto, los
valores que debe tomar deben ser únicos para cada fila y no se admite el valor nulo. Es
una costumbre colocar como primera columna a la clave primaria, pero ello no es
necesario. Además muchos RDBMS suelen permitir la opción de declarar a esta clave
como autonumérica.
Una clave foránea es aquella
columna que existiendo como
dependiente en una tabla, es a su
vez clave primaria en otra tabla;
es decir, que es lo que vincula a
ambas tablas.
Asimismo
una
clave
es
compuesta
cuando
está
formada por más de una columna.

La

o

ou

•

aN

•

una tabla no estaría en 1ª Forma Normal si no tiene una clave primaria puesto que así no se
podría asegurar que no aparecieran filas o tuplas duplicadas.
en el punto 4 existen discrepancias entre distintos autores. Date considera que no se cumpliría la
1FN si se admiten los nulos (debe entenderse por nulo al campo vacío). Otros autores consideran
que mientras la columna no sea una clave se pueden admitir nulos, salvo en la clave primaria.
el punto 5 significa que una columna no puede tener múltiples valores porque cada valor que
tome un atributo debe ser un dato atómico; es decir, a cada valor de X en la relación le pertenece
un valor de Y, entonces a cada valor de Y le pertenece un valor de X. Por eso mismo Date aclara
que no se permiten los IDs de objetos, filas, etc puesto que estos IDs son en realidad punteros a
otra tabla; con lo cual no se respeta la atomicidad.
respecto a las claves conviene aclarar lo siguiente:

ur

•

an

Cabe hacer las siguientes aclaraciones:

Segunda forma Normal (2FN): 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.

Figura 4

Pr

of.

El siguiente es un ejemplo tomado del libro del
autor citado. La tabla PRIMERA contiene
información de los proveedores (V) y las
partes que los proveedores han enviado (P).
Esta tabla está en 1FN ya que no se repiten
las filas siendo su clave primaria compuesta
(V#,P#)
Pero PRIMERA No está en 2FN porque el
campo Status no depende de la clave primaria
sino de la ciudad y la ciudad sólo depende de
la columna proveedor (V) pero no de la clave
primaria. Esta situación trae consecuencias
nefastas con las operaciones INSERT, UPDATE

Figura 5
POO APLICADA A BASES DE DATOS

y

Y DELETE. ¿Por qué? Simplemente si consideramos la operación DELETE para el proveedor 3 (V3)
eliminaremos también la información relativa sobre la parte que envío (P2). Esta situación se soluciona
reduciendo PRIMERA a dos tablas que estén en 2FN: las tablas SEGUNDA y VP.

Le
ttr

La clave primaria de SEGUNDA es V# y de la nueva tabla VP es (V#,p#).

Tercera forma Normal (3FN): Una relación se encuentra en 3FN si está en 2FN y cada atributo que no
forma parte de ninguna clave, depende directamente y no transitivamente, de la clave primaria.
La tabla SEGUNDA está en 2FN pero no está en 3FN para llevarla la reducimos a una serie de tablas que
estén en 3FN, lo que se muestra en la
siguiente imagen:

an

En la tabla SEGUNDA la ciudad depende
del proveedor (V) pero el estado depende
de la ciudad, con lo cual se da un relación
transitiva y no se cumple entonces con la
3FN.

ss

Hay que notar que la tabla VP al estar en
2FN también está en 3FN ya que la
cantidad depende directamente de la
Figura 6
clave primaria que identifica a un envío
en particular. La tabla VC relaciona los proveedores con la ciudad en la que se encuentran y la tabla CS
muestra el estado para cada ciudad.
El modelo ha quedado reducido a tres tablas: VP, VC Y CS. Puede apreciarse a simple vista que para VP
la clave primaria es (V#,P#). La tabla VC tiene a V# como clave primaria y la tabla CS tiene a CIUDAD
como clave primaria.

ou

Asimismo VP tiene una clave primaria (V#,p#) y dos claves foráneas: V# y P#. V# hace referencia a la
tabla VC en la cual V# es primaria y la clave P# hace referencia a tabla P de partes, que aparece en los
diagramas pero cuya clave primaria es P#. La tabla VC tiene como clave foránea a CIUDAD que se
vincula con la tabla CS donde la clave primaria es CIUDAD.

DISEÑO FÍSICO Y LÓGICO DE UNA BASE DE DATOS. Diferencias. Casos Prácticos

aN

El diseño lógico de un sistema de base de datos es más bien permanente en el tiempo, en cambio el
diseño físico es variable ya que debe considerar no sólo el hardware sobre el que se va a instalar, sino
también cambia según el DBMS que consideremos para utilizar. Por ejemplo Oracle, DB2, SQL Server
(edición Empresarial) y MySQL permiten el particionamiento de tablas, la fragmentación de tablas y
replicación.

La

ur

Además los sistemas más modernos y potentes permiten crear sistemas de bases de datos distribuidos.
Estos sistemas son distintos entre sí y también existe gran cantidad de software intermedio, conocido
como Middleware, que permite que se puedan compartir datos e información de distintos sistemas de
bases de datos, cuando el sistema es distribuido. En teoría, cuando un sistema es distribuido, podríamos
encontrar en un computador un DBMS de DB2, en otro ORACLE, etc.

of.

Caso práctico: Diseño Lógico BD Escuela
El diseño lógico, como sabemos, debe poder dar una respuesta al modelo de datos que maneja la
organización.

Pr

Es por ello, que el diseño lógico suele ser independiente del diseño físico de la base de datos y suele
mantenerse a lo largo de los años puesto que, en general, responde al objeto o meta a la cual está
dirigido todo el accionar de la organización.

Para trabajar en clase vamos a utilizar un modelo de datos de una Escuela como ejemplo didáctico
de modo tal que sea fácil de entender y de llevar a la práctica.
POO APLICADA A BASES DE DATOS

y

En la Figura 7 puede apreciarse el Modelo de Entidad – Relación de la Escuela. El mismo es
consecuencia de la normalización de datos y de la expresión del diseño del diccionario de datos, el
cual se muestra en la Figura 8,

Le
ttr

En el MER pueden apreciarse, en forma gráfica, tanto las claves primarias y las foráneas, indicadas
mediante la relaciones; en el diccionario también se expresan las relaciones existentes pero en forma
narrativa, y se especifican los requisitos de los diferentes atributos de las tablas.
Todas las claves primarias son simples, salvo la de la tabla Notas que es una clave primaria
compuesta; es decir y se indica de esta forma: Clave primaria = (idmateria, DNI).
En la tabla Materias su clave primaria es idmateria, y no tiene foráneas.

La clave primaria de la tabla Alumnos es DNI y tiene como foránea al atributo idlocalidad. Nótese que
en la tabla Localidades idlocalidad es una clave primaria.

an

En general, puede decirse que toda clave foránea referencia o se vincula con una clave
primaria, o por lo menos única, de por lo general otra tabla (aunque podría ser un atributo
de la misma tabla).
Finalmente la tabla Notas tiene una clave primaria que es compuesta ya que está formada por dos
atributos: idmateria y DNI. La notación para indicar que una clave es compuesta es así:
(idmateria,DNI), SIEMPRE entre paréntesis y separados los atributos por comas.

ou

La

ur

Leer bien el MER significa
comprender que todas las
claves
foráneas
están
indicadas
por
las
relaciones uno a muchos.
Esto es la lógica que une
todas las entidades y las
mantiene
como
una
unidad, que en definitiva
es lo que se llama base
de datos relacional.

aN

Es así que idmateria es
una clave foránea que
referencia a la clave
primaria de la tabla
Materias, y DNI es la otra
clave foránea de la tabla
Notas que referencia a la
clave primaria de la tabla
Alumnos.

ss

Pero si se lee en forma correcta el MER se notará que la tabla Notas es una tabla que tiene dos
relaciones de 1 a muchos: una con la tabla Alumnos y la otra con la tabla Materias. Esto queire decir,
que cada atributo, por separado, es por sí una clave foránea; además de que ambos atributos en
forma conjunta forman la
clave foránea.

El diseño de las claves
primarias y foráneas es
Figura 7: MER para la Escuela
una consecuencia de la
normalización
y
es
fundamental para lograr la integridad de los datos.

of.

En cambio el Diccionario de datos, nos dice más que el MER sobre los requisitos de los atributos,
motivo por el cual es fundamental para poder llegar a un buen diseño físico, que siempre va a
depender de la tecnología (hardware) y del DBMS que elijamos.

Pr

En el diseño lógico establecemos claramente, para cada atributo si: es clave primaria (PK), si es clave
foránea (FK), si es un atributo obligatorio y, lo más importante, establecemos el DOMINIO del atributo
(numérico, lógico, cadena o fecha) PERO NO SU TIPO DE DATOS. Ocurre que el tipo de datos es
siempre dependiente del modelo físico; es decir, del DBMS que vayamos a utilizar para plasmar en la
realidad el diseño lógico.
Por cuestiones de documentación, también es muy importante describir cuál es el fin del atributo, si tiene
restricciones por ejemplo un atributo entero no podrá tener valores superiores a 99 ni inferiores a 1; etc.
ur

aN

ou

ss

an

Le
ttr

y

POO APLICADA A BASES DE DATOS

La

Figura 8: diseño lógico – diccionario de datos

Caso Práctico: Diseño Físico BD Escuela
Como ya hemos expresado, el diseño físico es la implementación en un DBMS de la vida real del
diseño lógico ya realizado.

of.

Vamos a presentar, un diseño físico para dos DBMS: MySQL y SQL Server. En la Figura 9 puede
apreciarse el diseño físico para MySQL y en la Figura 10 el correspondiente modelo físico para SQL
Server.
En ambos casos, surgen del diseño lógico (tanto el MER como el diseño lógico del diccionario).

Pr

Aquí ya no hablamos de dominio de un atributo (los valores y tipos de datos que puede tener)
sino que especificamos el tipo de datos que mejor se ajusta a ese dominio y el tipo de datos
específico del DBMS elegido (es decir cómo se llama en la realidad).
También es importante nombrar en forma explícita cómo se llamarán todas las claves primarias así
como las claves foráneas ya que, de no hacerlo, el DBMS, cualquiera que elijamos, le asignará un
nombre por omisión. En este caso los diseños físicos coinciden en cuanto a tipos de datos. Sin
embargo, es de suma importancia verificar la documentación de cada DBMS puesto que los tipos de
datos pueden variar entre DBMS.
POO APLICADA A BASES DE DATOS

ou

ss

an

Le
ttr

y

Diseño Físico para MySQL

La

ur

aN

Figura 9: Diccionario de datos físico para MySQL

Pr

of.

Diseño Físico para SQL Server
ou

ss

an

Le
ttr

y

POO APLICADA A BASES DE DATOS

Pr

of.

La

ur

aN

Figura 10: Diccionario de datos físico para SQL Server

Más contenido relacionado

La actualidad más candente

Capitulo 1 Base de Datos
Capitulo 1 Base de DatosCapitulo 1 Base de Datos
Capitulo 1 Base de DatosAndres Andrades
 
Diccionario de datos
Diccionario de datosDiccionario de datos
Diccionario de datosJorge Garcia
 
I:\sistemas de informacion\diccionario de datos
I:\sistemas de informacion\diccionario de datosI:\sistemas de informacion\diccionario de datos
I:\sistemas de informacion\diccionario de datosadrian
 
Diccionario de datos
Diccionario de datosDiccionario de datos
Diccionario de datosmiranda271999
 
Diccionario de datos luis
Diccionario de datos luisDiccionario de datos luis
Diccionario de datos luisLuis Lizarraga
 
Diccionario de datos Unefa
Diccionario de datos UnefaDiccionario de datos Unefa
Diccionario de datos Unefaginotamborero
 
Diccionario de datos
Diccionario de datosDiccionario de datos
Diccionario de datosandrescofran
 
Diccionario de Datos
Diccionario de DatosDiccionario de Datos
Diccionario de DatosALONSO UCHIHA
 
Estructura de una base de datos
Estructura de una base de datosEstructura de una base de datos
Estructura de una base de datosZcnp1234
 
Base de datos slideshare
Base de datos slideshareBase de datos slideshare
Base de datos slideshareunefacams
 
Introducción a las bases de datos
Introducción a las bases de datosIntroducción a las bases de datos
Introducción a las bases de datosJeckson Loza
 
Definiciones base de datos
Definiciones base de datosDefiniciones base de datos
Definiciones base de datosCamilo Tellez
 
Capitulo 13 diseño de bases de datos - analisis y diseño de sistemas. Kendal...
Capitulo 13 diseño de bases de datos -  analisis y diseño de sistemas. Kendal...Capitulo 13 diseño de bases de datos -  analisis y diseño de sistemas. Kendal...
Capitulo 13 diseño de bases de datos - analisis y diseño de sistemas. Kendal...Bryan Canelas
 
Clase de informatica base de datos
Clase de informatica   base de datosClase de informatica   base de datos
Clase de informatica base de datos4M4LI4
 
Introducción a las bases de datos Parte1
Introducción a las bases de datos Parte1Introducción a las bases de datos Parte1
Introducción a las bases de datos Parte1Angeles Merino Basurto
 
Conclusiones sobre bases de datos
Conclusiones sobre bases de datosConclusiones sobre bases de datos
Conclusiones sobre bases de datosDaniiGonzalez98
 

La actualidad más candente (20)

Capitulo 1 Base de Datos
Capitulo 1 Base de DatosCapitulo 1 Base de Datos
Capitulo 1 Base de Datos
 
Diccionario de datos
Diccionario de datosDiccionario de datos
Diccionario de datos
 
Diccionario de datos
Diccionario de datosDiccionario de datos
Diccionario de datos
 
I:\sistemas de informacion\diccionario de datos
I:\sistemas de informacion\diccionario de datosI:\sistemas de informacion\diccionario de datos
I:\sistemas de informacion\diccionario de datos
 
Diccionario de datos
Diccionario de datosDiccionario de datos
Diccionario de datos
 
Diccionario de datos
Diccionario de datosDiccionario de datos
Diccionario de datos
 
Diccionario de datos
Diccionario de datosDiccionario de datos
Diccionario de datos
 
Diccionario de datos luis
Diccionario de datos luisDiccionario de datos luis
Diccionario de datos luis
 
Diccionario de datos Unefa
Diccionario de datos UnefaDiccionario de datos Unefa
Diccionario de datos Unefa
 
Diccionario de datos
Diccionario de datosDiccionario de datos
Diccionario de datos
 
Diccionario de Datos
Diccionario de DatosDiccionario de Datos
Diccionario de Datos
 
Estructura de una base de datos
Estructura de una base de datosEstructura de una base de datos
Estructura de una base de datos
 
Base de datos teoria
Base de datos teoriaBase de datos teoria
Base de datos teoria
 
Base de datos slideshare
Base de datos slideshareBase de datos slideshare
Base de datos slideshare
 
Introducción a las bases de datos
Introducción a las bases de datosIntroducción a las bases de datos
Introducción a las bases de datos
 
Definiciones base de datos
Definiciones base de datosDefiniciones base de datos
Definiciones base de datos
 
Capitulo 13 diseño de bases de datos - analisis y diseño de sistemas. Kendal...
Capitulo 13 diseño de bases de datos -  analisis y diseño de sistemas. Kendal...Capitulo 13 diseño de bases de datos -  analisis y diseño de sistemas. Kendal...
Capitulo 13 diseño de bases de datos - analisis y diseño de sistemas. Kendal...
 
Clase de informatica base de datos
Clase de informatica   base de datosClase de informatica   base de datos
Clase de informatica base de datos
 
Introducción a las bases de datos Parte1
Introducción a las bases de datos Parte1Introducción a las bases de datos Parte1
Introducción a las bases de datos Parte1
 
Conclusiones sobre bases de datos
Conclusiones sobre bases de datosConclusiones sobre bases de datos
Conclusiones sobre bases de datos
 

Similar a POOABD (POO Aplicada a B Datos) - RDBMS parte 1

POOABD (POO Aplicada a B Datos) - RDBMS parte 1 -2020
POOABD (POO Aplicada a B Datos) - RDBMS parte 1 -2020POOABD (POO Aplicada a B Datos) - RDBMS parte 1 -2020
POOABD (POO Aplicada a B Datos) - RDBMS parte 1 -2020Laura Noussan Lettry
 
Funciones de un DBA y Tipos de Base de Datos
Funciones de un DBA y Tipos de Base de Datos Funciones de un DBA y Tipos de Base de Datos
Funciones de un DBA y Tipos de Base de Datos AlbertCabezasAlania
 
Funciones dba y tipos de bd
Funciones dba y tipos de bdFunciones dba y tipos de bd
Funciones dba y tipos de bdJesus Cardenas
 
Semana 2: Administración de base de datos: conceptos básicos y su aplicación
Semana 2: Administración de base de datos: conceptos básicos y su aplicaciónSemana 2: Administración de base de datos: conceptos básicos y su aplicación
Semana 2: Administración de base de datos: conceptos básicos y su aplicaciónremyor09
 
Unidad 3 bases de datos
Unidad 3 bases de datosUnidad 3 bases de datos
Unidad 3 bases de datosEd Gonzalez
 
Base de Datos - Yaiberth Bravo
Base de Datos - Yaiberth BravoBase de Datos - Yaiberth Bravo
Base de Datos - Yaiberth BravoYaiberth
 
Administración de base de datos
Administración de base de datosAdministración de base de datos
Administración de base de datososcardazamercado
 
Bases de datos.docx kethy
Bases de datos.docx kethyBases de datos.docx kethy
Bases de datos.docx kethyKethyVasquez
 
Base de datos presentacion
Base de datos presentacionBase de datos presentacion
Base de datos presentacionValmore Medina
 

Similar a POOABD (POO Aplicada a B Datos) - RDBMS parte 1 (20)

POOABD (POO Aplicada a B Datos) - RDBMS parte 1 -2020
POOABD (POO Aplicada a B Datos) - RDBMS parte 1 -2020POOABD (POO Aplicada a B Datos) - RDBMS parte 1 -2020
POOABD (POO Aplicada a B Datos) - RDBMS parte 1 -2020
 
Funciones de un DBA tipos de BD
Funciones de un DBA tipos de BD Funciones de un DBA tipos de BD
Funciones de un DBA tipos de BD
 
Funciones de un DBA y Tipos de Base de Datos
Funciones de un DBA y Tipos de Base de Datos Funciones de un DBA y Tipos de Base de Datos
Funciones de un DBA y Tipos de Base de Datos
 
Funciones dba y tipos de bd
Funciones dba y tipos de bdFunciones dba y tipos de bd
Funciones dba y tipos de bd
 
Tarea 1
Tarea 1Tarea 1
Tarea 1
 
Bases de datos
Bases de datosBases de datos
Bases de datos
 
Semana 2: Administración de base de datos: conceptos básicos y su aplicación
Semana 2: Administración de base de datos: conceptos básicos y su aplicaciónSemana 2: Administración de base de datos: conceptos básicos y su aplicación
Semana 2: Administración de base de datos: conceptos básicos y su aplicación
 
Unidad 3 bases de datos
Unidad 3 bases de datosUnidad 3 bases de datos
Unidad 3 bases de datos
 
Base de datos
Base de datosBase de datos
Base de datos
 
Presentacion 1
Presentacion 1Presentacion 1
Presentacion 1
 
Diseño de una base de datos
Diseño de una base de datosDiseño de una base de datos
Diseño de una base de datos
 
Base de Datos - Yaiberth Bravo
Base de Datos - Yaiberth BravoBase de Datos - Yaiberth Bravo
Base de Datos - Yaiberth Bravo
 
Administración de base de datos
Administración de base de datosAdministración de base de datos
Administración de base de datos
 
Bases de datos.docx kethy
Bases de datos.docx kethyBases de datos.docx kethy
Bases de datos.docx kethy
 
Funciones de un DBA y tipos de BD
Funciones de un DBA y tipos de BDFunciones de un DBA y tipos de BD
Funciones de un DBA y tipos de BD
 
Funciones de un DBA y Tipos de BD
Funciones de un DBA y Tipos de BDFunciones de un DBA y Tipos de BD
Funciones de un DBA y Tipos de BD
 
Guia 3 base de datos
Guia 3 base de datosGuia 3 base de datos
Guia 3 base de datos
 
Base de datos presentacion
Base de datos presentacionBase de datos presentacion
Base de datos presentacion
 
El DBA y sus funciones
El DBA y sus funcionesEl DBA y sus funciones
El DBA y sus funciones
 
Base de datos (trabajo)
Base de datos (trabajo)Base de datos (trabajo)
Base de datos (trabajo)
 

Más de Laura Noussan Lettry

POOABD (POO Aplicada a B Datos) - RDBMS parte 2 -2020
POOABD (POO Aplicada a B Datos) - RDBMS parte 2 -2020POOABD (POO Aplicada a B Datos) - RDBMS parte 2 -2020
POOABD (POO Aplicada a B Datos) - RDBMS parte 2 -2020Laura Noussan Lettry
 
POOABD (POO Aplicada a B Datos) - API JDBC parte 2 -2020
POOABD (POO Aplicada a B Datos) - API JDBC parte 2 -2020POOABD (POO Aplicada a B Datos) - API JDBC parte 2 -2020
POOABD (POO Aplicada a B Datos) - API JDBC parte 2 -2020Laura Noussan Lettry
 
POOABD (POO Aplicada a B Datos) - API JDBC parte 1 -2020
POOABD (POO Aplicada a B Datos) - API JDBC parte 1 -2020POOABD (POO Aplicada a B Datos) - API JDBC parte 1 -2020
POOABD (POO Aplicada a B Datos) - API JDBC parte 1 -2020Laura Noussan Lettry
 
POOABD (POO Aplicada a B Datos) - ABMC parte 1 -2020
POOABD (POO Aplicada a B Datos) - ABMC parte 1 -2020POOABD (POO Aplicada a B Datos) - ABMC parte 1 -2020
POOABD (POO Aplicada a B Datos) - ABMC parte 1 -2020Laura Noussan Lettry
 
Conexiones JDBC con MySQL y SQL Server Express - Casos Prácticos con NetBeans...
Conexiones JDBC con MySQL y SQL Server Express - Casos Prácticos con NetBeans...Conexiones JDBC con MySQL y SQL Server Express - Casos Prácticos con NetBeans...
Conexiones JDBC con MySQL y SQL Server Express - Casos Prácticos con NetBeans...Laura Noussan Lettry
 
POOABD (POO Aplicada a B Datos) - ABMC parte 1
POOABD (POO Aplicada a B Datos) - ABMC parte 1POOABD (POO Aplicada a B Datos) - ABMC parte 1
POOABD (POO Aplicada a B Datos) - ABMC parte 1Laura Noussan Lettry
 
POOABD (POO Aplicada a B Datos) - API JDBC - Parte 1
POOABD (POO Aplicada a B Datos) - API JDBC - Parte 1POOABD (POO Aplicada a B Datos) - API JDBC - Parte 1
POOABD (POO Aplicada a B Datos) - API JDBC - Parte 1Laura Noussan Lettry
 
POOABD (POO Aplicada a B Datos) - API JDBC - Parte 2
POOABD (POO Aplicada a B Datos) - API JDBC - Parte 2POOABD (POO Aplicada a B Datos) - API JDBC - Parte 2
POOABD (POO Aplicada a B Datos) - API JDBC - Parte 2Laura Noussan Lettry
 
POOABD (POO Aplicada a B Datos) - RDBMS parte 2
POOABD (POO Aplicada a B Datos) - RDBMS parte 2POOABD (POO Aplicada a B Datos) - RDBMS parte 2
POOABD (POO Aplicada a B Datos) - RDBMS parte 2Laura Noussan Lettry
 

Más de Laura Noussan Lettry (9)

POOABD (POO Aplicada a B Datos) - RDBMS parte 2 -2020
POOABD (POO Aplicada a B Datos) - RDBMS parte 2 -2020POOABD (POO Aplicada a B Datos) - RDBMS parte 2 -2020
POOABD (POO Aplicada a B Datos) - RDBMS parte 2 -2020
 
POOABD (POO Aplicada a B Datos) - API JDBC parte 2 -2020
POOABD (POO Aplicada a B Datos) - API JDBC parte 2 -2020POOABD (POO Aplicada a B Datos) - API JDBC parte 2 -2020
POOABD (POO Aplicada a B Datos) - API JDBC parte 2 -2020
 
POOABD (POO Aplicada a B Datos) - API JDBC parte 1 -2020
POOABD (POO Aplicada a B Datos) - API JDBC parte 1 -2020POOABD (POO Aplicada a B Datos) - API JDBC parte 1 -2020
POOABD (POO Aplicada a B Datos) - API JDBC parte 1 -2020
 
POOABD (POO Aplicada a B Datos) - ABMC parte 1 -2020
POOABD (POO Aplicada a B Datos) - ABMC parte 1 -2020POOABD (POO Aplicada a B Datos) - ABMC parte 1 -2020
POOABD (POO Aplicada a B Datos) - ABMC parte 1 -2020
 
Conexiones JDBC con MySQL y SQL Server Express - Casos Prácticos con NetBeans...
Conexiones JDBC con MySQL y SQL Server Express - Casos Prácticos con NetBeans...Conexiones JDBC con MySQL y SQL Server Express - Casos Prácticos con NetBeans...
Conexiones JDBC con MySQL y SQL Server Express - Casos Prácticos con NetBeans...
 
POOABD (POO Aplicada a B Datos) - ABMC parte 1
POOABD (POO Aplicada a B Datos) - ABMC parte 1POOABD (POO Aplicada a B Datos) - ABMC parte 1
POOABD (POO Aplicada a B Datos) - ABMC parte 1
 
POOABD (POO Aplicada a B Datos) - API JDBC - Parte 1
POOABD (POO Aplicada a B Datos) - API JDBC - Parte 1POOABD (POO Aplicada a B Datos) - API JDBC - Parte 1
POOABD (POO Aplicada a B Datos) - API JDBC - Parte 1
 
POOABD (POO Aplicada a B Datos) - API JDBC - Parte 2
POOABD (POO Aplicada a B Datos) - API JDBC - Parte 2POOABD (POO Aplicada a B Datos) - API JDBC - Parte 2
POOABD (POO Aplicada a B Datos) - API JDBC - Parte 2
 
POOABD (POO Aplicada a B Datos) - RDBMS parte 2
POOABD (POO Aplicada a B Datos) - RDBMS parte 2POOABD (POO Aplicada a B Datos) - RDBMS parte 2
POOABD (POO Aplicada a B Datos) - RDBMS parte 2
 

Último

Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricKeyla Dolores Méndez
 
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
 
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
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan JosephBRAYANJOSEPHPEREZGOM
 
ejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sofejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sofJuancarlosHuertasNio1
 
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
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx241521559
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfSergioMendoza354770
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdfIsabellaMontaomurill
 
Hernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxHernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxJOSEMANUELHERNANDEZH11
 
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...AlanCedillo9
 
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
 
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
 
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
 
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
 
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
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIAWilbisVega
 
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
 
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
 

Último (20)

Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 
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...
 
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
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
ejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sofejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sof
 
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
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdf
 
Hernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxHernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptx
 
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
 
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
 
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
 
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)
 
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersSalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
 
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
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
 
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
 
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
 

POOABD (POO Aplicada a B Datos) - RDBMS parte 1

  • 1. PROGRAMACIÓN ORIENTADA A OBJETOS PROGRAMACIÓN ORIENTADA A OBJETOS APLICADA A BASES DE DATOS APLICADA A BASES DE DATOS Por LAURA NOUSSAN LETTRY SISTEMAS DE BASES DE DATOS RELACIONALES Parte 1 Aviso Legal El presente libro electrónico se distribuye bajo Attribution-NonCommercialNoDerivs 3.0 Unported
  • 2. POO APLICADA A BASES DE DATOS ÍNDICE SISTEMAS DE BASES DE DATOS RELACIONALES – PARTE 1 Introducción 1. Concepto de Base de Datos 2. Clasificación de Base de Datos. 3. Diseño Lógico y Normalización. Concepto de Diseño Lógico. Normalización: 1º, 2º y 3º Forma Normal. Claves Primarias, Claves foráneas. 4. Diseño Lógico y Físico de una base de datos. Casos Prácticos 1 2 4 6 FUENTES Bibliográficas Consultadas 1. C.J. DATE, Introducción a los SISTEMAS DE BASES DE DATOS 7ª Edición (Person Educacion, 2001, México) 2. SAROKA, Raúl Horacio, Sistemas de Información en la Era Digital (Capítulos I y II, ebook, Fundación OSDE 2002) BIBLIOGRAFÍA para el Alumno 1. Contenidos de esta Unidad 2. SAROKA, Raúl Horacio, Sistemas de Información en la Era Digital (Capítulo 2, ebook, Fundación OSDE 2002) 3. Software necesario: Procesador de Texto y/o Planilla de Cálculo (*) ACTIVIDADES Unidad 1 Punto 1 Tareas Lectura, trabajos, prácticas propuestas en el Website de la Materia. (*): En el Website de la materia: http://www.lnoussanl.com.ar/java&bd http://www.lnoussanl.com.ar/javabd/
  • 3. POO APLICADA A BASES DE DATOS SISTEMAS DE BASES DE DATOS RELACIONALES – PARTE 1 INTRODUCCIÓN Los Sistemas de Bases de Datos están presentes en toda actividad y en toda organización. El mundo actual, con el comercio electrónico, depende de ellos. Los Sistemas de Bases de Datos que abordaremos son los RDBMS (Sistemas de Bases de Datos Relacionales) que se basan en el álgebra relacional y que ciertamente son claros dominadores, aún con los cambios tecnológicos que se vienen produciendo en las últimas décadas y que han hecho que los mismos se extiendan para poder dar sustento a los objetos. Estos sistemas están en la base de la Pirámide Organizacional puesto que son utilizados a diario para llevar a cabo las operaciones diarias de las organizaciones. Los podemos encontrar en pequeñas, medianas y grandes empresas y organizaciones. Como veremos también, de esa base en la pirámide se va subiendo a otros niveles donde aparecen otros tipos de sistemas de información, hasta llegar al nivel más elevado; sin embargo, en estos niveles inclusive, la importancia de los sistemas operaciones, es fundamental ya que es, tal vez, la fuente de información más importante para los Sistemas de Apoyo a la Toma de Decisiones y los Sistemas de Nivel Superior.
  • 4. POO APLICADA A BASES DE DATOS y SISTEMAS DE BASES DE DATOS RELACIONALES CONCEPTO DE BASE DE DATOS Le ttr En primer lugar lo fundamental es entender qué es una base de datos y cómo funciona. Nos interesa este concepto porque si bien el programa trata las Bases de Datos en Visual Basic los conceptos teóricos y prácticos sobre este tema en particular sirven incluso para su utilización y aprovechamiento con otros lenguajes de programación y de diseño de software que permiten manipular datos. El fin básico de una Base de Datos tiene es almacenar información que tiene valor desde algún punto de vista para su propietario. La siguiente imagen an indica la diferencia entre un Sistema de Base de Datos y otros Sistemas de almacenamiento de información. . ou • • • las Bases de Datos nos Figura 1 permiten compartir datos e información; entre distintas aplicaciones y distintos tipos de usuarios; haciendo que la información esté disponibles en forma rápida; y fundamentalmente restringida a quienes debe y pueden tener acceso a ella. aN • ss Los Sistemas de Bases de Datos han tenido un gran auge en los últimos años y ello se debe a sus ventajas en relación a los sistemas que se basan en Archivos como el Excel, por ejemplo. Las ventajas se resumen y explican seguidamente: Aquí no se trata de que un usuario decide compartir sus datos con otros sino más bien de que existe una política empresaria que decide qué datos estarán accesibles, en qué forma y en qué nivel de acceso a los diferentes usuarios. ur Cuando realmente existe dicha política en una organización la misma se ve reflejada en la práctica en la existencia de una persona, el Administrador de Bases de Datos o DBA, que en base a esa política o visión de negocio configura la Base de Datos en vista a sus objetivos. También existe un administrador por software que se llama habitualmente Sistema Administrador de Bases de Datos o DBMS. Pr of. La En las bases de datos tenemos una serie de archivos relacionados entre sí que se llaman tablas. Además estos sistemas permiten establecer un orden de accesos a la información teniendo en cuenta la jerarquía del personal de la empresa. De esta forma la seguridad es fundamental y con ello se consigue compartir los datos pero también restringir su acceso. Por ejemplo, un empleado de almacenes debe poder consultar los datos de los artículos y mercaderías pero no debería por qué tener acceso a los datos de los sueldos del personal. Por otro lado la información puede estar disponible en forma muy rápida mediante la ejecución de consultas sobre la base de datos. Todo lo referente al manejo de archivos está gestionado por el Sistema Administrador de la Base de Datos (software) y por el Administrador de la Base de Datos (un ingeniero, analista de sistemas).
  • 5. an Le ttr y POO APLICADA A BASES DE DATOS ss Figura 2 ou Estos sistemas de Bases de Datos tienen éxito en la medida que estén bien diseñados y en la medida que el Sistema se adapte a las necesidades de la empresa. Por ejemplo, en empresas grandes una Base de Datos como Access, por poner un ejemplo, no resulta del todo óptimo debido a que se necesita un sistema más potente que pueda manejar en manera óptima la gran cantidad de operaciones diarias que estas empresas requieren. Además los costos aumentan a medida que el Sistema de Base de Datos es más potente y estos costos no sólo tienen que ver con la compra del sistema sino con su mantenimiento. CLASIFICACIÓN aN Un aspecto fundamental para conseguir concomitantemente los objetivos de utilidad, rapidez, seguridad e integridad de los datos es mediante un buen diseño lógico mediante la normalización de las tablas. Podemos hacer una clasificación de Sistemas de Bases de Datos teniendo en cuenta su concepción intrínseca; de esta forma podemos decir que existen los tres tipos vistos en la primera imagen: • RDBMS: Sistema Administrador de Bases de Datos Relacional o Bases de Datos Relacionales; ORDBMS: Sistema Administrador de Bases de Datos Objeto Relacional o Bases de Datos Objeto Relacionales; OODBMS: Sistema Administrador de Bases de Datos Orientados a Objeto o Bases de Datos Orientadas a Objeto. ur • • La Los sistemas de bases de datos que actualmente existen son los Relaciones u Objeto Relacionales, ya que los orientados a objeto no han tenido éxito. Así tenemos a DB2 (de IBM), Oracle, MySQL, Postgress, Access, etc. Están basados en la lógica del álgebra relacional y por lo tanto, cualquier diseño físico corresponderá a un previo diseño lógico que deberá ser consistente con su sustento teórico. Para ello es necesario que se cumplan ciertos requisitos: El diseño lógico es siempre independiente del tipo de aplicación, esto quiere decir que no interesa si la base de datos es operacional o es para apoyo a la toma de decisiones. Inclusive no debería haber mayores discrepancias entre un sistema comercial u otro. Las tablas que forman la Base de Datos deben estar normalizadas ya que es el requisito necesario para que puedan aplicarse las operaciones relacionales. Como consecuencia de ello deben poder establecerse reglas de integridad. Por integridad debe entenderse no sólo mantener la consistencia de los datos (el pegamento, si se quiere entre las tablas), sino también definir el significado de las tablas y de la base de datos en su totalidad. of. • • Pr • La importancia del modelo lógico es tal, que los cambios en el sistema físico deberían siempre amoldarse a éste. En realidad el modelo físico puede cambiar sin cambiarse el modelo lógico cuando cuestiones de almacenamiento y eficiencia así lo indiquen.
  • 6. POO APLICADA A BASES DE DATOS Sistemas Operacionales; Sistemas para el apoyo a la toma de decisiones. aN ou ss an Le ttr • • y Otra clasificación tiene en cuenta el uso del Sistema de Bases de Datos: Figura 3 Los Sistemas de Bases de Datos Operacionales son aquellos que sirven de base para llevar las operaciones diarias de las empresas y organizaciones. En cambio los Sistemas de Apoyo a la Toma de Decisiones son sistemas que ayudan en el análisis de información de negocios. ur Las bases de datos para la toma de decisiones tienen ciertas características propias. En general puede decirse que son prácticamente de sólo lectura. Cada tanto se hacen actualizaciones pero que consisten básicamente en INSERTs (casi nunca DELETEs y menos aún UPDATEs). Esto se debe a que se basan e las bases de datos operacionales que cada tanto son almacenadas en un repositorio para no perder la información histórica. Además suelen ser bases de datos grandes. of. La Los sistemas operacionales en cambio suelen ser bases de datos no tan grandes puesto que las cuestiones relativas al rendimiento son fundamentales, las cargas de datos (que involucran INSERTs, UPDATEs y DELETEs o altas, bajas y modificaciones) son generalmente predecibles y de gran volumen, de allí la importancia de que no estén sobrecargadas con datos de ejercicios anteriores; motivo por el cual suele guardarse sólo los datos del ejercicio actual y los de los ejercicios anteriores enviarse a un repositorio, que es en definitiva otra base de datos, fuente juntamente con bases de datos externas de la información que se utilizará en los niveles intermedios y superiores de la organización para la toma de decisiones. Así para los Sistemas de Apoyo a la Toma de Decisiones tenemos bases de datos especiales como son los Data Warehouse, los Data Marts, etc. Pr Un Data Warehouse es una base de datos orientada a un tema, integrado y no volátil (quiere decir que una vez insertados los datos no pueden ser cambiados aunque sí borrados). Surgieron para prestar información específica sobre un tema teniendo una fuente única de información y para no afectar a la base de datos operacional. En general un Data Warehouse está pensado para proporcionar una fuente de datos única a todas las actividades de apoyo a la toma de decisiones. En cambio, los Data Marts consideran un subconjunto,
  • 7. POO APLICADA A BASES DE DATOS y es decir son almacenes de datos especializados orientados a un tema, integrado, no volátil pero para apoyar a un subconjunto específico de decisiones de administración. Le ttr Asimismo cuentan con un Nivel Analítico que permite sacar conclusiones para la toma de decisiones. En resumen un Sistema BI (Sistema de Inteligencia de Negocio) está conformado de la siguiente manera: Los Sistemas BI permiten capturar datos de los sistemas de nivel operativo (OLTP, ERP, externos; sistemas que llevan a cabo decisiones repetitivas y rutinarias) para construir un repositorio de datos llamado Data Warehouse. Este almacén puede estar formado por diferentes Data Marts o almacenes de datos para distintos temas específicos. Las distintas metodologías de análisis de datos (OLAP, Minería de datos, etc.) brindan a los usuarios finales la información necesaria que requieren para la toma de decisiones no estructuradas. Diseño Lógico o Conceptual de una Base de Datos an DISEÑO LÓGICO Y NORMALIZACIÓN - Repaso de conceptos fundamentales ss El diseño conceptual tiende a identificar las entidades y relaciones existentes, aplicación de las reglas de normalización, de nombres inequívocos para los atributos de las entidades, establecimiento de reglas de integridad, etc. ou Conceptualmente la Base de Datos se diseña por medio de un DER (Diagrama de Entidad-Relación), que se lleva a un MER (Modelo de Entidad-Relación), y un Diccionario de Datos Elemental (se especifica en el modelo el detalle conceptual de las entidades y relaciones; es decir cuál es su función u objetivo; Los elementos de datos o atributos necesarios y las reglas de integridad básicas para la base de datos). Además, hay que tener en cuenta, que al normalizar el diseño, necesariamente las relaciones van a establecerse por medio de tablas y vínculos entre éstas. Normalización aN Es muy importante no olvidar que el diseño lógico o conceptual de una Base de Datos debe ser independiente del diseño físico. Es decir, el diseño lógico debería poder aplicarse para cualquier DBMS (Oracle, DB2, MySQL, Access, etc.) sin alteraciones en su lógica, mientras que el diseño físico; es decir cómo se va a implementar este diseño lógico sobre el hardware puede ser distinto según las funcionalidades de cada DBMS o incluso variar en el tiempo en una misma organización dependiendo de factores como acceso a la base de datos, costo de mantenimiento, velocidad de accesos, etc. Por ejemplo la base de datos podría estar alojada en tres servidores distintos dependiendo de la performance que se necesite, pero el diseño lógico debería seguir siendo el mismo. ur Las tablas que forman la Base de Datos deben estar normalizadas ya que es el requisito necesario para que pueda aplicarse el álgebra relacional y sus operaciones. La La normalización consiste en establecer lo que se conoce como reglas de integridad. De esta forma se pueden aplicar las operaciones relacionales obteniendo los resultados que prevé el álgebra relacional y no cualquier otro. Algunas operaciones relacionales se efectúan sobre una misma tabla y otras sobre un conjunto. Por ejemplo, sobre una misma tabla: seleccionar, proyectar , restringir; sobre conjuntos (sobre más de una tabla): unión, intersección y diferencia entre conjuntos. En SQL a estas operaciones se las halla definidas en lo que se conoce como DML o Lenguaje de Manipulación de Datos. of. Por integridad debería entenderse que no sólo implica mantener la consistencia de los datos (el pegamento, si se quiere entre las tablas), sino también definir el significado de las tablas y de la base de datos en su totalidad; es decir su diseño lógico. En SQL estas definiciones están representadas por lo que se conoce como DDL o Lenguaje de Definición de Datos y permite crear las tablas con sus atributos, tipos de datos y restricciones de integridad. Pr Con las tres primeras formas normales se alcanzarían estos objetivos. Estas tres formas normales fueron propuestas por Edgard Frank Codd y se basan el cálculo relacional. Aquí debemos aclarar cuál es la correspondencia entre la terminología relacional y la utilizada en los distintos sistemas comerciales, ya que no es la misma: • • • Relación = tabla Tupla = fila o registro Atributo = columna o campo
  • 8. • • • Clave = llave o código de identificación Clave Primaria = es la superclave. [PRIMARY KEY en SQL] Clave Ajena = es una clave externa o clave foránea [FOREIGN KEY en SQL] y POO APLICADA A BASES DE DATOS Le ttr Primera forma Normal (1FN): siguiendo a J.C. Date, una tabla está en primera forma normal sí y sólo si es isomorfa a alguna relación. Lo cual significa que la tabla debe cumplir los siguientes requisitos: 1. 2. 3. 4. No hay orden de arriba-a-abajo en las filas. No hay orden de izquierda-a-derecha en las columnas. No hay filas duplicadas. Cada intersección de fila-y-columna contiene exactamente un valor del dominio aplicable (y nada más). 5. Todas las columnas son regulares [es decir, las filas no tienen componentes como IDs de fila, IDs de objeto, o timestamps ocultos]. • ss o o Una clave primaria es aquella columna (pueden ser también dos columnas o más) que identifica únicamente a esa fila. La clave primaria es un identificador, y por lo tanto, los valores que debe tomar deben ser únicos para cada fila y no se admite el valor nulo. Es una costumbre colocar como primera columna a la clave primaria, pero ello no es necesario. Además muchos RDBMS suelen permitir la opción de declarar a esta clave como autonumérica. Una clave foránea es aquella columna que existiendo como dependiente en una tabla, es a su vez clave primaria en otra tabla; es decir, que es lo que vincula a ambas tablas. Asimismo una clave es compuesta cuando está formada por más de una columna. La o ou • aN • una tabla no estaría en 1ª Forma Normal si no tiene una clave primaria puesto que así no se podría asegurar que no aparecieran filas o tuplas duplicadas. en el punto 4 existen discrepancias entre distintos autores. Date considera que no se cumpliría la 1FN si se admiten los nulos (debe entenderse por nulo al campo vacío). Otros autores consideran que mientras la columna no sea una clave se pueden admitir nulos, salvo en la clave primaria. el punto 5 significa que una columna no puede tener múltiples valores porque cada valor que tome un atributo debe ser un dato atómico; es decir, a cada valor de X en la relación le pertenece un valor de Y, entonces a cada valor de Y le pertenece un valor de X. Por eso mismo Date aclara que no se permiten los IDs de objetos, filas, etc puesto que estos IDs son en realidad punteros a otra tabla; con lo cual no se respeta la atomicidad. respecto a las claves conviene aclarar lo siguiente: ur • an Cabe hacer las siguientes aclaraciones: Segunda forma Normal (2FN): 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. Figura 4 Pr of. El siguiente es un ejemplo tomado del libro del autor citado. La tabla PRIMERA contiene información de los proveedores (V) y las partes que los proveedores han enviado (P). Esta tabla está en 1FN ya que no se repiten las filas siendo su clave primaria compuesta (V#,P#) Pero PRIMERA No está en 2FN porque el campo Status no depende de la clave primaria sino de la ciudad y la ciudad sólo depende de la columna proveedor (V) pero no de la clave primaria. Esta situación trae consecuencias nefastas con las operaciones INSERT, UPDATE Figura 5
  • 9. POO APLICADA A BASES DE DATOS y Y DELETE. ¿Por qué? Simplemente si consideramos la operación DELETE para el proveedor 3 (V3) eliminaremos también la información relativa sobre la parte que envío (P2). Esta situación se soluciona reduciendo PRIMERA a dos tablas que estén en 2FN: las tablas SEGUNDA y VP. Le ttr La clave primaria de SEGUNDA es V# y de la nueva tabla VP es (V#,p#). Tercera forma Normal (3FN): Una relación se encuentra en 3FN si está en 2FN y cada atributo que no forma parte de ninguna clave, depende directamente y no transitivamente, de la clave primaria. La tabla SEGUNDA está en 2FN pero no está en 3FN para llevarla la reducimos a una serie de tablas que estén en 3FN, lo que se muestra en la siguiente imagen: an En la tabla SEGUNDA la ciudad depende del proveedor (V) pero el estado depende de la ciudad, con lo cual se da un relación transitiva y no se cumple entonces con la 3FN. ss Hay que notar que la tabla VP al estar en 2FN también está en 3FN ya que la cantidad depende directamente de la Figura 6 clave primaria que identifica a un envío en particular. La tabla VC relaciona los proveedores con la ciudad en la que se encuentran y la tabla CS muestra el estado para cada ciudad. El modelo ha quedado reducido a tres tablas: VP, VC Y CS. Puede apreciarse a simple vista que para VP la clave primaria es (V#,P#). La tabla VC tiene a V# como clave primaria y la tabla CS tiene a CIUDAD como clave primaria. ou Asimismo VP tiene una clave primaria (V#,p#) y dos claves foráneas: V# y P#. V# hace referencia a la tabla VC en la cual V# es primaria y la clave P# hace referencia a tabla P de partes, que aparece en los diagramas pero cuya clave primaria es P#. La tabla VC tiene como clave foránea a CIUDAD que se vincula con la tabla CS donde la clave primaria es CIUDAD. DISEÑO FÍSICO Y LÓGICO DE UNA BASE DE DATOS. Diferencias. Casos Prácticos aN El diseño lógico de un sistema de base de datos es más bien permanente en el tiempo, en cambio el diseño físico es variable ya que debe considerar no sólo el hardware sobre el que se va a instalar, sino también cambia según el DBMS que consideremos para utilizar. Por ejemplo Oracle, DB2, SQL Server (edición Empresarial) y MySQL permiten el particionamiento de tablas, la fragmentación de tablas y replicación. La ur Además los sistemas más modernos y potentes permiten crear sistemas de bases de datos distribuidos. Estos sistemas son distintos entre sí y también existe gran cantidad de software intermedio, conocido como Middleware, que permite que se puedan compartir datos e información de distintos sistemas de bases de datos, cuando el sistema es distribuido. En teoría, cuando un sistema es distribuido, podríamos encontrar en un computador un DBMS de DB2, en otro ORACLE, etc. of. Caso práctico: Diseño Lógico BD Escuela El diseño lógico, como sabemos, debe poder dar una respuesta al modelo de datos que maneja la organización. Pr Es por ello, que el diseño lógico suele ser independiente del diseño físico de la base de datos y suele mantenerse a lo largo de los años puesto que, en general, responde al objeto o meta a la cual está dirigido todo el accionar de la organización. Para trabajar en clase vamos a utilizar un modelo de datos de una Escuela como ejemplo didáctico de modo tal que sea fácil de entender y de llevar a la práctica.
  • 10. POO APLICADA A BASES DE DATOS y En la Figura 7 puede apreciarse el Modelo de Entidad – Relación de la Escuela. El mismo es consecuencia de la normalización de datos y de la expresión del diseño del diccionario de datos, el cual se muestra en la Figura 8, Le ttr En el MER pueden apreciarse, en forma gráfica, tanto las claves primarias y las foráneas, indicadas mediante la relaciones; en el diccionario también se expresan las relaciones existentes pero en forma narrativa, y se especifican los requisitos de los diferentes atributos de las tablas. Todas las claves primarias son simples, salvo la de la tabla Notas que es una clave primaria compuesta; es decir y se indica de esta forma: Clave primaria = (idmateria, DNI). En la tabla Materias su clave primaria es idmateria, y no tiene foráneas. La clave primaria de la tabla Alumnos es DNI y tiene como foránea al atributo idlocalidad. Nótese que en la tabla Localidades idlocalidad es una clave primaria. an En general, puede decirse que toda clave foránea referencia o se vincula con una clave primaria, o por lo menos única, de por lo general otra tabla (aunque podría ser un atributo de la misma tabla). Finalmente la tabla Notas tiene una clave primaria que es compuesta ya que está formada por dos atributos: idmateria y DNI. La notación para indicar que una clave es compuesta es así: (idmateria,DNI), SIEMPRE entre paréntesis y separados los atributos por comas. ou La ur Leer bien el MER significa comprender que todas las claves foráneas están indicadas por las relaciones uno a muchos. Esto es la lógica que une todas las entidades y las mantiene como una unidad, que en definitiva es lo que se llama base de datos relacional. aN Es así que idmateria es una clave foránea que referencia a la clave primaria de la tabla Materias, y DNI es la otra clave foránea de la tabla Notas que referencia a la clave primaria de la tabla Alumnos. ss Pero si se lee en forma correcta el MER se notará que la tabla Notas es una tabla que tiene dos relaciones de 1 a muchos: una con la tabla Alumnos y la otra con la tabla Materias. Esto queire decir, que cada atributo, por separado, es por sí una clave foránea; además de que ambos atributos en forma conjunta forman la clave foránea. El diseño de las claves primarias y foráneas es Figura 7: MER para la Escuela una consecuencia de la normalización y es fundamental para lograr la integridad de los datos. of. En cambio el Diccionario de datos, nos dice más que el MER sobre los requisitos de los atributos, motivo por el cual es fundamental para poder llegar a un buen diseño físico, que siempre va a depender de la tecnología (hardware) y del DBMS que elijamos. Pr En el diseño lógico establecemos claramente, para cada atributo si: es clave primaria (PK), si es clave foránea (FK), si es un atributo obligatorio y, lo más importante, establecemos el DOMINIO del atributo (numérico, lógico, cadena o fecha) PERO NO SU TIPO DE DATOS. Ocurre que el tipo de datos es siempre dependiente del modelo físico; es decir, del DBMS que vayamos a utilizar para plasmar en la realidad el diseño lógico. Por cuestiones de documentación, también es muy importante describir cuál es el fin del atributo, si tiene restricciones por ejemplo un atributo entero no podrá tener valores superiores a 99 ni inferiores a 1; etc.
  • 11. ur aN ou ss an Le ttr y POO APLICADA A BASES DE DATOS La Figura 8: diseño lógico – diccionario de datos Caso Práctico: Diseño Físico BD Escuela Como ya hemos expresado, el diseño físico es la implementación en un DBMS de la vida real del diseño lógico ya realizado. of. Vamos a presentar, un diseño físico para dos DBMS: MySQL y SQL Server. En la Figura 9 puede apreciarse el diseño físico para MySQL y en la Figura 10 el correspondiente modelo físico para SQL Server. En ambos casos, surgen del diseño lógico (tanto el MER como el diseño lógico del diccionario). Pr Aquí ya no hablamos de dominio de un atributo (los valores y tipos de datos que puede tener) sino que especificamos el tipo de datos que mejor se ajusta a ese dominio y el tipo de datos específico del DBMS elegido (es decir cómo se llama en la realidad). También es importante nombrar en forma explícita cómo se llamarán todas las claves primarias así como las claves foráneas ya que, de no hacerlo, el DBMS, cualquiera que elijamos, le asignará un nombre por omisión. En este caso los diseños físicos coinciden en cuanto a tipos de datos. Sin embargo, es de suma importancia verificar la documentación de cada DBMS puesto que los tipos de datos pueden variar entre DBMS.
  • 12. POO APLICADA A BASES DE DATOS ou ss an Le ttr y Diseño Físico para MySQL La ur aN Figura 9: Diccionario de datos físico para MySQL Pr of. Diseño Físico para SQL Server
  • 13. ou ss an Le ttr y POO APLICADA A BASES DE DATOS Pr of. La ur aN Figura 10: Diccionario de datos físico para SQL Server