SlideShare une entreprise Scribd logo
1  sur  10
Télécharger pour lire hors ligne
Fundamentos de Bases de Datos
Unidad Didáctica 2: Bases de Datos Relacionales
2.1 ¿Qué es una Base de Datos Relacional?
Introducción
Un sistema de Administración de Bases de Datos permite que los datos permanezcan
independientes de los programas de aplicación que los manipulan. Esta es una característica
muy importante, por todos los beneficios que le ofrece a quien desarrolla programas para
accederlos. Esta característica recibe diferentes nombres, tales como independencia de datos,
o independencia lógica. Esta independencia se logra a través de un proceso de abstracción de
datos, que permite definir a los mismos de manera abstracta, independiente de la tecnología
en la cual la base de datos llegara a implantarse.
Para lograr lo anterior, un concepto fundamental de la abstracción de datos en bases de datos
es el concepto de un modelo de datos, el cual permite definir los requerimientos de datos de
un área de la empresa, mucho antes de pensar en cómo representarlos en tecnología.
El modelo de datos entonces define a los datos de tal forma que se organizan para ser
manipulados en la base de datos. Este módulo permite introducir el concepto de Bases de
Datos Relacionales, y la forma en la cual los datos se pueden definir para ser representados en
base a relaciones matemáticas, o relaciones, esencia del modelo relacional. La forma natural
de representar una relación es en base a una tabla, o representación tabular de las relaciones.
¿Qué es una Base de Datos Relacional?
El modelo relacional es el modelo de datos que soporta a la mayoría de los productos de bases
de datos en el mercado actual. Es un modelo formal, basado en las matemáticas, en su
concepto de relación matemática y en la teoría de conjuntos. El contenido de este módulo y el
siguiente presentan los conceptos y términos que se presentan a continuación:
 Relaciones matemáticas o tablas relacionales
 Llaves, primaria, alterna, foránea
 Diseño de bases de datos relacionales
 Normalización
Fundamentos de Bases de Datos
¿Qué es un Modelo de Datos?
Un concepto muy importante y fundamental para hablar de abstracción de datos en el área de
bases de datos es el modelo de datos. Un modelo de datos permite representar los
requerimientos de datos de un área bajo análisis en una forma organizada, para facilitar su
representación en un producto de bases de datos, y posteriormente su manipulación.
Un modelo de datos se forma de:
 Elementos de modelación, que permiten definir la estructura de los datos, tales como
tipos de datos, dominios, y reglas de integridad. (DDL)
 Operaciones para poder actualizar y consultar la base de datos. (DML)
¿Qué es un Lenguaje de Definición de Datos (DDL)?
Son los elementos de modelación que permiten definir el metadata de la base de datos, es
decir, los datos acerca de los datos, que se almacenan en el DBMS, en el catálogo del sistema.
¿Qué es un Lenguaje de Manipulación de Datos (DML)?
Son las operaciones que permiten el acceso a la base de datos para actualización y consulta a
los datos de la base de datos, y poder resolver cualquier consulta que los usuarios requieran
de la misma.
El uso de un Modelo de Datos en la creación de una Base de Datos
Para la creación de una base de datos es necesario contar primero con el modelo de datos que
permita crearla. El modelo de datos, como abstracción de la realidad, es la herramienta
utilizada para la representación de las entidades y los atributos que las describen, así como las
relaciones entre ellas. Este modelo sirve como base para poder crear una base de datos. El
enfoque de modelación más usado es el modelo Entidad-Relación.
El modelo entidad-relación (E-R) se basa en percibir y modelar el mundo real en base a
elementos básicos de construcción: entidades y relaciones entre ellas, así como atributos que
permiten describir a ambos elementos. De todo lo anterior se deduce que el punto clave en la
construcción de la base de datos será el modelo de datos.
Con la modelación de los datos requeridos por una base de datos se logra:
1. Formalización: definir formalmente las estructuras permitidas y las restricciones, a fin
de representar los datos que requiere una aplicación, y la base de datos requerida.
2. Diseño: el modelo resultante es la materia prima esencial para el diseño de la base de
datos.
¿Qué es el Modelo Relacional?
El modelo relacional fue propuesto por E.W. Codd en 1970. Es actualmente el modelo que
soporta a la gran mayoría de los sistemas de bases de datos de la actualidad. El modelo
provee características únicas de modelación, que permiten crear modelos de datos
relacionales, con relativa facilidad.
El Modelo Relacional ofrece las siguientes ventajas:
 Los datos se representan en relaciones, cuya manera natural de representación es en
forma de tabla bidimensional. Esta representación es muy simple de entender y
visualizar, además de que es conocida y utilizada en muchas formas de trabajo de la
vida diaria, tanto en la escuela como en el trabajo.
 Un ejemplo de una tabla relacional se presenta a continuación:
Alumno
Matrícula Nombre Apellido Ciudad Estado Carrera
Fecha de
Nacimiento
45175 José Pérez Monterrey NL
Ing. En
Electrónica
21/01/1980
46550 Luis Martínez Hermosillo SON
Ing. En
Computación
12/06/1981
47123 René González Toluca MEX
Lic. En
Economía
13/09/1992
 Es un modelo formal de datos, característica que lo diferencia de los otros modelos.
 Es un modelo basado en las matemáticas, en el concepto de relación matemática y en
teoría de conjuntos.
 La manera natural de representar una relación es en forma de tabla, que permite una
conceptualización y explicación sencilla de este concepto.
 Además, por ser un concepto matemático, las tablas que forman una base de datos
relacional son manipuladas con muchas ventajas por operadores matemáticos muy
sencillos y poderosos, el álgebra y el cálculo relacional. A partir de estos operadores, es
muy sencillo resolver cualquier consulta que un usuario requiera. Estos lenguajes,
conjuntos de operadores, están presentes en el SQL, lenguaje estándar para la
manipulación de Bases de Datos relacionales comerciales.
2.2 Conceptos Fundamentales de una Base de Datos Relacional
La teoría que soporta a las bases de datos relacionales es muy formal, matemática. Por esta
razón, es importante conocerla para tener un entendimiento que permita obtener el máximo
aprovechamiento de ésta. Los conceptos que se presentan en este apartado deben permitir
que se aproveche al máximo la tecnología, por lo que su entendimiento es indispensable. Se
presentan esos conceptos a continuación.
¿Qué es una Relación Matemática/Tabla relacional?
Un elemento fundamental en el modelo relacional es el concepto de relación matemática, o
tabla relacional.
Una relación o tabla relacional, en su forma más simple, es un conjunto de renglones (también
conocidos como tuplas, registros, ocurrencias, o instancias).
De una manera más formal, es el conjunto de tuplas, o renglones, formados por un conjunto
de valores tomados a partir de “n” diferentes dominios. Se puede expresar de la siguiente
manera:
Relación R:
 Dado un conjunto de “n” dominios, D1 a Dn, una relación R se define como el conjunto
de tuplas ordenadas, denotadas como <d1, d2, …, dn> donde cada tupla es formada
tomando un valor de cada uno de los dominios
 Se denota asi: R = {<d11, d21, …, dn1>1, <d12, d22, …, dn2>2, …, <d1m, d2m, ….,
dnm>m }
Por ejemplo, en la tabla relacional ALUMNO, cada renglón corresponde a los datos de un
alumno en particular. La tabla o relación contiene entonces los renglones que representan los
datos de los alumnos en una escuela.
Cada uno de los datos almacenados en un renglón representa el valor de un atributo, para
cada atributo que forma una tabla relacional. En la tabla de alumno, los atributos que
describen a la tabla o relación son: Matrícula, Nombre, Apellido, Ciudad, Carrera y Fecha de
Nacimiento.
Finalmente, cada columna de la tabla relacional, cada atributo, contiene los valores del atributo
para cada uno de los renglones u ocurrencias de la tabla. Los valores que un atributo puede
tomar se conocen como el dominio del atributo, y es muy importante su definición, ya que
permite cuidar las reglas de los valores válidos en un atributo.
Cada tabla debe tener entonces la siguiente definición:
 Nombre de la tabla
 Nombre para cada columna o atributo que forma la tabla
 El dominio sobre el cual está definido cada uno de los atributos que forman la tabla.
Características de una tabla relacional
 Una tabla relacional es una tabla bidimensional que posee la siguientes características:
 Los renglones poseen datos acerca de una entidad, entendiendo como entidad a algo
acerca de lo cual se desea almacenar datos.
 Las columnas contienen datos acerca de los atributos de la entidad.
 Cada posición en la tabla almacena un valor simple, atómico, de un atributo.
 Todos los valores almacenados en una columna son del mismo tipo, es decir, están
definidos sobre el mismo dominio.
 Cada columna o atributo debe poseer un nombre único.
 El orden de las columnas no es relevante.
 El orden de los renglones no es relevante.
 No pueden existir dos renglones idénticos en la tabla.
 Se utiliza el nombre de tabla relacional, en lugar de relación, para evitar confundir con
el nombre que se le da a una relación en el sentido natural del Español, es decir, la
asociación entre elementos, aunque es importante aclarar que no todas las tablas son
relaciones.
 Los siguientes términos se utilizan de manera equivalente, para referirse a términos
comunes en el área de Bases de Datos: Tabla/renglón/columna =
archivo/registro/campo = relación/tupla/atributo.
 El grado de una relación es el número de columnas o atributos de la misma y no puede
ser cero, una tabla no puede existir sin columnas.
 La cardinalidad de una tabla es el número de renglones o tuplas en la tabla.
Que es una Llave
Una llave está formada por uno o más atributos que permiten identificar de forma única a
cada tupla o renglón en una tabla relacional. Una llave compuesta es una llave que está
formada por dos o más atributos.
Además:
 Una tabla relacional puede tener sólo una llave primaria, pero pueden tener llaves
adicionales, que son llamadas llaves candidatas o alternas
 Una llave primaria se usa para
– Establecer relaciones entre diferentes tablas
– Permiten organizar la forma en que las tablas se almacenan
– Son usadas para generar índices, mecanismos usados para el acceso eficiente a
los datos
Llave primaria
En tablas en las cuales existe más de una llave, se selecciona a una de ellas, como la llave con
la cual se realizan búsquedas o con la cual se establecen relaciones entre las tablas. Este es el
caso de la llave primaria. Las llaves restantes son llamadas llaves alternas o secundarias.
La selección de la llave primaria se considera normalmente sobre la base de ser la llave más
pequeña, aunque no es una condición absoluta. El caso de una llave compuesta, que consiste
de varios atributos, es mucho más compleja de manejar como llave primaria, por ejemplo.
¿Qué es un Esquema de Base de Datos Relacional?
Un esquema de base de datos relacional es un conjunto de definiciones de tablas
relacionales, y un conjunto de reglas o restricciones de integridad.
La definición de tablas relacionales procede de definir los requerimientos de un área de
aplicación. Las reglas de integridad definen todas aquellas condiciones, o restricciones, que los
datos deben cumplir, para mantener la integridad de los datos, y su valor.
Las reglas de integridad se agrupan en:
 Estructurales, que son específicas al modelo de datos relacional.
 Semánticas, que son específicas a la aplicación, impuestas por las reglas de negocio
que la aplicación misma pide cumplir. Un ejemplo puede ser las condiciones que una
empresa puede requerir para la contratación de un empleado, y que el sistema debe
cumplir, lo que impone reglas que los datos de la base de datos debe cumplir.
2.3 ¿Qué son las reglas de Integridad en una Base de Datos Relacional?
Las reglas de integridad en una base de datos permiten que la información almacenada en la
misma, posea la consistencia e integridad requerida por sus usuarios. Estas reglas provienen
de la definición misma del modelo relacional, pero están dirigidas a que su cumplimiento
garantice que los datos sean correctos, o consistentes.
Por su importancia es indispensable que se conozca sobre las mismas, que se definan en la
creación de la base de datos, y que el acceso a la base de datos cumpla con ellas. A
continuación se presentan las bases del manejo de reglas de integridad, para que se busque su
cumplimiento.
Reglas de Integridad Estructurales del Modelo Relacional:
1. Regla de Integridad de Dominio. Hace referencia a que los valores de los datos deben
ser atómicos. El dominio de cada atributo debe estar compuesto de valores atómicos,
por lo tanto no puede ser un valor compuesto de otros valores más simples, como un
arreglo, o un registro de valores. Si se requiere almacenar una dirección por ejemplo,
será necesario separar en diferentes atributos, como Calle, número, colonia, ciudad.
2. Regla de Integridad de Llave. Establece que la llave de una entidad debe ser única.
3. Regla de Integridad de entidad: Establece que no se permite un valor nulo como parte
de una llave primaria. El valor nulo es permitido para todos los dominios, y se utiliza
para cuando el valor del atributo no está definido, o no aplica, y el dominio definido
para el atributo lo permite. Por ejemplo, el dominio de NumeroDeEmpleadoDelJefe en la
tabla de Empleados, cuando se trabaja en el registro del director de la empresa, y el
valor de este número no aplica para el director. Se almacena entonces un NULO.
4. Regla de Integridad referencial: Las referencia de una tabla a otra tabla debe ser con
valores de llaves consistentes.
¿Qué significa la regla de Integridad referencial?
La regla de integridad referencial sirve para forzar que las relaciones entre tablas, que se
establecen mediante llaves, mantengan siempre datos consistentes entre las mismas.
Las relaciones entre las tablas se establecen entre renglones de una tabla con renglones en la
segunda tabla. Estas relaciones se establecen mediante las llaves, donde la llave primaria de
una tabla se replica en otra tabla, para establecer la relación. La réplica de la llave primaria en
otra tabla, recibe el nombre de llave foránea (foreign key).
¿Qué es una llave foránea?
Una llave foránea (FK) es uno o más atributos en una tabla, que son la llave primaria en otra
tabla, inclusive la misma. La llave foránea debe cumplir con:
1. Los atributos que forma la FK deben estar definidos en los mismos dominios que los
atributos que forman la PK relacionada a la FK. La condición hace referencia a que los
valores deben coincidir entre la FK y la PK, no sobre los nombres de los atributos, por lo
cual los nombres en ambas llaves pueden ser diferentes.
2. El valor de la FK en un renglón de la tabla, debe coincidir con un valor de la PK en la
otra tabla, o ser un valor NULO. Esto garantiza que la información es consistente entre
las tablas que mantienen una relación entre ellas.
Para mostrar estas relaciones en un diagrama, se dibuja una flecha que va de la FK a la PK,
mostrando la relación entre ambas tablas. En el siguiente ejemplo se muestra la relación
existente entre un Cliente, que tiene una OrdenDeCompra colocada en la empresa.
En general, las reglas de integridad referencial pueden ser definidas entre dos tablas, en
cualquier dirección, e inclusive pueden ser definidas entre ocurrencias o renglones de la misma
tabla.
Ejemplo: ¿qué relaciones se pueden definir entre un departamento académico y los
profesores que trabajan en él?
Un departamento académico se asocia con los diferentes profesores que trabajan en él. Por
otro lado un profesor es jefe o director de un departamento académico.
DISEÑO DE UN SISTEMA QUE UTILIZA UNA BASE DE DATOS
El diseño de una base de datos relacional puede seguir diferentes caminos.
La primera opción toma como base la observación del mundo real bajo estudio, generando un
conjunto de tablas, que contengan los atributos y las restricciones de integridad sobre las
mismas.
Otra opción es dividir el diseño en dos fases:
 definir el modelo conceptual y su esquema
 transformar el esquema conceptual en un esquema relacional mediante un conjunto de
reglas de transformación
Aunque la normalización (tema que se cubre posteriormente) es una base muy importante
para el diseño de una base de datos, este diseño no puede limitarse a la aplicación exclusiva
de la teoría de la normalización.
El diseño de una base de datos, por otro lado, tiene múltiples puntos de vista, y formas de
desarrollarse, de acuerdo a esos puntos de vista. Para este curso, la idea del diseño es que se
convierta en una proceso práctico, que facilite el proceso de diseño.
En base a esos puntos de vista, un proceso de diseño práctico, incluye las siguientes fases:
Fase 0: Análisis de requerimientos. (No forma parte del proceso de diseño)
Aunque esta fase realmente corresponde a la fase de análisis de un proyecto, se presenta con
el fin de establecer que de ésta fase se obtiene la materia prima para el diseño de la base de
datos. De esta fase se requiere obtener los requerimientos de datos que el sistema bajo
análisis ha formalizado. El documento de análisis, en la parte de requerimientos de datos, es
entonces la entrada al proceso de diseño.
Fase 1: Diseño conceptual de la base de datos
Esta fase puede ser considerada tanto parte de la fase de análisis de requerimientos, como
parte de la fase de Diseño. Es decir, para algunos puede formar parte del análisis de
requerimientos, donde el producto de esta fase es el modelo de datos construido en base a
una herramienta específica. Para otros, esta actividad corresponde a la fase de diseño de
software, específicamente, del diseño de la base de datos. Para este caso se considera parte
del diseño de la base de datos.
Esta fase corresponde a la definición del esquema conceptual, que es el esquema que define el
modelo de datos a alto nivel, independiente de cualquier sistema de administración de bases
de datos. Por ser un modelo abstracto, no puede utilizarse para definir la estructura de la base
de datos.
Fase 2: fase de diseño lógico (Transformación del modelo de datos o esquema conceptual, al
SMBD a utilizar).
En esta fase se transforma la salida del diseño conceptual, o esquema conceptual, al esquema
de la base de datos en el modelo de datos del DBMS a utilizar.
Fase 3: Diseño de la base de datos física
Consiste en definir las estructuras de almacenamiento y de acceso para alcanzar una
rendimiento óptimo de las aplicaciones que se ejecutarán sobre la base de datos. Se tienen
diferentes criterios para la definición de la base de datos física: el tiempo de respuesta de
ejecución de las aplicaciones y consultas a la base de datos, la utilización del espacio de
almacenamiento disponible o el volumen de transacciones por minuto, que se ejecutan sobre la
base de datos
Estas fases son genéricas, por lo que deben revisarse para el caso particular de cada empresa.

Contenu connexe

Tendances

El modelo de datos relacional (Base de Datos)
El modelo de datos relacional (Base de Datos)El modelo de datos relacional (Base de Datos)
El modelo de datos relacional (Base de Datos)Jose Carlos Guerra
 
diagrama de planificaciones
diagrama de planificaciones diagrama de planificaciones
diagrama de planificaciones siirjosef
 
Tarea 2 Modelo Entidad-Relación
Tarea 2 Modelo Entidad-RelaciónTarea 2 Modelo Entidad-Relación
Tarea 2 Modelo Entidad-RelaciónWilly Montaño
 
Introducción a los modelos de datos
Introducción a los modelos de datosIntroducción a los modelos de datos
Introducción a los modelos de datosGalo Anzules
 
Introduccion a los Modelos De Datos
Introduccion a los Modelos De DatosIntroduccion a los Modelos De Datos
Introduccion a los Modelos De Datosesacre
 
Modelos de bases_de_datos
Modelos de bases_de_datosModelos de bases_de_datos
Modelos de bases_de_datos22carlos
 
Diseño Logico - Diseño de bases de datos relacionales
Diseño Logico - Diseño de bases de datos relacionalesDiseño Logico - Diseño de bases de datos relacionales
Diseño Logico - Diseño de bases de datos relacionalesRobert Rodriguez
 
Introducción a las bases de datos relacionales
Introducción a las bases de datos relacionalesIntroducción a las bases de datos relacionales
Introducción a las bases de datos relacionaleskdulcey
 
Introduccion a las bases de datos
Introduccion a las bases de datosIntroduccion a las bases de datos
Introduccion a las bases de datosjedwinm
 
Modelo relacional
Modelo relacionalModelo relacional
Modelo relacionalSuarezJhon
 
Bases de Datos Cap:III El modelo relacional
Bases de Datos Cap:III El modelo relacionalBases de Datos Cap:III El modelo relacional
Bases de Datos Cap:III El modelo relacionalVideoconferencias UTPL
 
Modelos de bdd y modelos de datos Rafael Olivares
Modelos de bdd y modelos de datos Rafael OlivaresModelos de bdd y modelos de datos Rafael Olivares
Modelos de bdd y modelos de datos Rafael OlivaresRafaelOlivares22
 
Modelo de datos y Modelo de Identidad
Modelo de datos y Modelo de Identidad Modelo de datos y Modelo de Identidad
Modelo de datos y Modelo de Identidad karina maita
 

Tendances (20)

El modelo de datos relacional (Base de Datos)
El modelo de datos relacional (Base de Datos)El modelo de datos relacional (Base de Datos)
El modelo de datos relacional (Base de Datos)
 
diagrama de planificaciones
diagrama de planificaciones diagrama de planificaciones
diagrama de planificaciones
 
Tarea 2 Modelo Entidad-Relación
Tarea 2 Modelo Entidad-RelaciónTarea 2 Modelo Entidad-Relación
Tarea 2 Modelo Entidad-Relación
 
Introducción a los modelos de datos
Introducción a los modelos de datosIntroducción a los modelos de datos
Introducción a los modelos de datos
 
Introduccion a los Modelos De Datos
Introduccion a los Modelos De DatosIntroduccion a los Modelos De Datos
Introduccion a los Modelos De Datos
 
Modelo relacional
Modelo relacionalModelo relacional
Modelo relacional
 
Modelos de bases_de_datos
Modelos de bases_de_datosModelos de bases_de_datos
Modelos de bases_de_datos
 
Diseño Logico - Diseño de bases de datos relacionales
Diseño Logico - Diseño de bases de datos relacionalesDiseño Logico - Diseño de bases de datos relacionales
Diseño Logico - Diseño de bases de datos relacionales
 
Base de datos 4
Base de datos 4Base de datos 4
Base de datos 4
 
Introducción a las bases de datos relacionales
Introducción a las bases de datos relacionalesIntroducción a las bases de datos relacionales
Introducción a las bases de datos relacionales
 
Introduccion a las bases de datos
Introduccion a las bases de datosIntroduccion a las bases de datos
Introduccion a las bases de datos
 
T2 bd
T2 bdT2 bd
T2 bd
 
Modelo relacional
Modelo relacionalModelo relacional
Modelo relacional
 
Base de datos relacionales
Base de datos relacionalesBase de datos relacionales
Base de datos relacionales
 
Modelo relacional
Modelo relacionalModelo relacional
Modelo relacional
 
Bases de Datos Cap:III El modelo relacional
Bases de Datos Cap:III El modelo relacionalBases de Datos Cap:III El modelo relacional
Bases de Datos Cap:III El modelo relacional
 
Modelos de bdd y modelos de datos Rafael Olivares
Modelos de bdd y modelos de datos Rafael OlivaresModelos de bdd y modelos de datos Rafael Olivares
Modelos de bdd y modelos de datos Rafael Olivares
 
Modelo de datos y Modelo de Identidad
Modelo de datos y Modelo de Identidad Modelo de datos y Modelo de Identidad
Modelo de datos y Modelo de Identidad
 
Modelo relacional
Modelo relacionalModelo relacional
Modelo relacional
 
Clase 2 -
Clase 2 -Clase 2 -
Clase 2 -
 

Similaire à Contenido UNIDAD II. COMO SON LAS BASES DE DATOS.

Similaire à Contenido UNIDAD II. COMO SON LAS BASES DE DATOS. (20)

Int_Bases_Datos_II.pdf
Int_Bases_Datos_II.pdfInt_Bases_Datos_II.pdf
Int_Bases_Datos_II.pdf
 
Modelo de datos
Modelo de datosModelo de datos
Modelo de datos
 
Modelo de datos
Modelo de datosModelo de datos
Modelo de datos
 
Modelo de datos
Modelo de datosModelo de datos
Modelo de datos
 
BASES DE DATOS
BASES DE DATOSBASES DE DATOS
BASES DE DATOS
 
Modelo relacional
Modelo relacionalModelo relacional
Modelo relacional
 
Base de datos
Base de datosBase de datos
Base de datos
 
Modelo relacional
Modelo relacionalModelo relacional
Modelo relacional
 
MODELO ENTIDAD RELACION
MODELO ENTIDAD RELACIONMODELO ENTIDAD RELACION
MODELO ENTIDAD RELACION
 
Bases de datos
Bases de datosBases de datos
Bases de datos
 
modelo de datos
modelo de datos modelo de datos
modelo de datos
 
Bases de datos
Bases de datosBases de datos
Bases de datos
 
Bases de datos
Bases de datosBases de datos
Bases de datos
 
Bases de datos
Bases de datosBases de datos
Bases de datos
 
Unidad 2 diseño de base de datos y e r
Unidad 2 diseño de base de datos y e rUnidad 2 diseño de base de datos y e r
Unidad 2 diseño de base de datos y e r
 
Modelos de datos
Modelos de datosModelos de datos
Modelos de datos
 
Modelos de datos y BDD
Modelos de datos y BDD Modelos de datos y BDD
Modelos de datos y BDD
 
Video 2
Video 2Video 2
Video 2
 
Construcción de base de datos
Construcción de base de datosConstrucción de base de datos
Construcción de base de datos
 
Modelo de entidad y relaciôn
Modelo de entidad y relaciônModelo de entidad y relaciôn
Modelo de entidad y relaciôn
 

Plus de spgutierrez86

Contenidos UNIDAD V. NORMALIZACIÓN.
Contenidos UNIDAD V.  NORMALIZACIÓN. Contenidos UNIDAD V.  NORMALIZACIÓN.
Contenidos UNIDAD V. NORMALIZACIÓN. spgutierrez86
 
Contenidos UNIDAD IV. MODELOS DE BASES DE DATOS
Contenidos UNIDAD IV.  MODELOS DE BASES DE DATOS  Contenidos UNIDAD IV.  MODELOS DE BASES DE DATOS
Contenidos UNIDAD IV. MODELOS DE BASES DE DATOS spgutierrez86
 
Contenido UNIDAD III. CREACIÓN DE UNA BASE DE DATOS
Contenido UNIDAD III.  CREACIÓN DE UNA BASE DE DATOSContenido UNIDAD III.  CREACIÓN DE UNA BASE DE DATOS
Contenido UNIDAD III. CREACIÓN DE UNA BASE DE DATOSspgutierrez86
 
Contenido UNIDAD I. ARCHIVOS CONVENCIONALES Y BASES DE DATOS
Contenido UNIDAD I.  ARCHIVOS CONVENCIONALES Y BASES DE DATOSContenido UNIDAD I.  ARCHIVOS CONVENCIONALES Y BASES DE DATOS
Contenido UNIDAD I. ARCHIVOS CONVENCIONALES Y BASES DE DATOSspgutierrez86
 
Contenidos por competencias
Contenidos por competenciasContenidos por competencias
Contenidos por competenciasspgutierrez86
 
Contenido programatico
Contenido programaticoContenido programatico
Contenido programaticospgutierrez86
 

Plus de spgutierrez86 (6)

Contenidos UNIDAD V. NORMALIZACIÓN.
Contenidos UNIDAD V.  NORMALIZACIÓN. Contenidos UNIDAD V.  NORMALIZACIÓN.
Contenidos UNIDAD V. NORMALIZACIÓN.
 
Contenidos UNIDAD IV. MODELOS DE BASES DE DATOS
Contenidos UNIDAD IV.  MODELOS DE BASES DE DATOS  Contenidos UNIDAD IV.  MODELOS DE BASES DE DATOS
Contenidos UNIDAD IV. MODELOS DE BASES DE DATOS
 
Contenido UNIDAD III. CREACIÓN DE UNA BASE DE DATOS
Contenido UNIDAD III.  CREACIÓN DE UNA BASE DE DATOSContenido UNIDAD III.  CREACIÓN DE UNA BASE DE DATOS
Contenido UNIDAD III. CREACIÓN DE UNA BASE DE DATOS
 
Contenido UNIDAD I. ARCHIVOS CONVENCIONALES Y BASES DE DATOS
Contenido UNIDAD I.  ARCHIVOS CONVENCIONALES Y BASES DE DATOSContenido UNIDAD I.  ARCHIVOS CONVENCIONALES Y BASES DE DATOS
Contenido UNIDAD I. ARCHIVOS CONVENCIONALES Y BASES DE DATOS
 
Contenidos por competencias
Contenidos por competenciasContenidos por competencias
Contenidos por competencias
 
Contenido programatico
Contenido programaticoContenido programatico
Contenido programatico
 

Contenido UNIDAD II. COMO SON LAS BASES DE DATOS.

  • 1. Fundamentos de Bases de Datos Unidad Didáctica 2: Bases de Datos Relacionales 2.1 ¿Qué es una Base de Datos Relacional? Introducción Un sistema de Administración de Bases de Datos permite que los datos permanezcan independientes de los programas de aplicación que los manipulan. Esta es una característica muy importante, por todos los beneficios que le ofrece a quien desarrolla programas para accederlos. Esta característica recibe diferentes nombres, tales como independencia de datos, o independencia lógica. Esta independencia se logra a través de un proceso de abstracción de datos, que permite definir a los mismos de manera abstracta, independiente de la tecnología en la cual la base de datos llegara a implantarse. Para lograr lo anterior, un concepto fundamental de la abstracción de datos en bases de datos es el concepto de un modelo de datos, el cual permite definir los requerimientos de datos de un área de la empresa, mucho antes de pensar en cómo representarlos en tecnología. El modelo de datos entonces define a los datos de tal forma que se organizan para ser manipulados en la base de datos. Este módulo permite introducir el concepto de Bases de Datos Relacionales, y la forma en la cual los datos se pueden definir para ser representados en base a relaciones matemáticas, o relaciones, esencia del modelo relacional. La forma natural de representar una relación es en base a una tabla, o representación tabular de las relaciones. ¿Qué es una Base de Datos Relacional? El modelo relacional es el modelo de datos que soporta a la mayoría de los productos de bases de datos en el mercado actual. Es un modelo formal, basado en las matemáticas, en su concepto de relación matemática y en la teoría de conjuntos. El contenido de este módulo y el siguiente presentan los conceptos y términos que se presentan a continuación:  Relaciones matemáticas o tablas relacionales  Llaves, primaria, alterna, foránea  Diseño de bases de datos relacionales  Normalización Fundamentos de Bases de Datos
  • 2. ¿Qué es un Modelo de Datos? Un concepto muy importante y fundamental para hablar de abstracción de datos en el área de bases de datos es el modelo de datos. Un modelo de datos permite representar los requerimientos de datos de un área bajo análisis en una forma organizada, para facilitar su representación en un producto de bases de datos, y posteriormente su manipulación. Un modelo de datos se forma de:  Elementos de modelación, que permiten definir la estructura de los datos, tales como tipos de datos, dominios, y reglas de integridad. (DDL)  Operaciones para poder actualizar y consultar la base de datos. (DML) ¿Qué es un Lenguaje de Definición de Datos (DDL)? Son los elementos de modelación que permiten definir el metadata de la base de datos, es decir, los datos acerca de los datos, que se almacenan en el DBMS, en el catálogo del sistema. ¿Qué es un Lenguaje de Manipulación de Datos (DML)? Son las operaciones que permiten el acceso a la base de datos para actualización y consulta a los datos de la base de datos, y poder resolver cualquier consulta que los usuarios requieran de la misma. El uso de un Modelo de Datos en la creación de una Base de Datos Para la creación de una base de datos es necesario contar primero con el modelo de datos que permita crearla. El modelo de datos, como abstracción de la realidad, es la herramienta utilizada para la representación de las entidades y los atributos que las describen, así como las relaciones entre ellas. Este modelo sirve como base para poder crear una base de datos. El enfoque de modelación más usado es el modelo Entidad-Relación. El modelo entidad-relación (E-R) se basa en percibir y modelar el mundo real en base a elementos básicos de construcción: entidades y relaciones entre ellas, así como atributos que permiten describir a ambos elementos. De todo lo anterior se deduce que el punto clave en la construcción de la base de datos será el modelo de datos. Con la modelación de los datos requeridos por una base de datos se logra: 1. Formalización: definir formalmente las estructuras permitidas y las restricciones, a fin de representar los datos que requiere una aplicación, y la base de datos requerida. 2. Diseño: el modelo resultante es la materia prima esencial para el diseño de la base de datos.
  • 3. ¿Qué es el Modelo Relacional? El modelo relacional fue propuesto por E.W. Codd en 1970. Es actualmente el modelo que soporta a la gran mayoría de los sistemas de bases de datos de la actualidad. El modelo provee características únicas de modelación, que permiten crear modelos de datos relacionales, con relativa facilidad. El Modelo Relacional ofrece las siguientes ventajas:  Los datos se representan en relaciones, cuya manera natural de representación es en forma de tabla bidimensional. Esta representación es muy simple de entender y visualizar, además de que es conocida y utilizada en muchas formas de trabajo de la vida diaria, tanto en la escuela como en el trabajo.  Un ejemplo de una tabla relacional se presenta a continuación: Alumno Matrícula Nombre Apellido Ciudad Estado Carrera Fecha de Nacimiento 45175 José Pérez Monterrey NL Ing. En Electrónica 21/01/1980 46550 Luis Martínez Hermosillo SON Ing. En Computación 12/06/1981 47123 René González Toluca MEX Lic. En Economía 13/09/1992  Es un modelo formal de datos, característica que lo diferencia de los otros modelos.  Es un modelo basado en las matemáticas, en el concepto de relación matemática y en teoría de conjuntos.  La manera natural de representar una relación es en forma de tabla, que permite una conceptualización y explicación sencilla de este concepto.  Además, por ser un concepto matemático, las tablas que forman una base de datos relacional son manipuladas con muchas ventajas por operadores matemáticos muy sencillos y poderosos, el álgebra y el cálculo relacional. A partir de estos operadores, es muy sencillo resolver cualquier consulta que un usuario requiera. Estos lenguajes, conjuntos de operadores, están presentes en el SQL, lenguaje estándar para la manipulación de Bases de Datos relacionales comerciales. 2.2 Conceptos Fundamentales de una Base de Datos Relacional La teoría que soporta a las bases de datos relacionales es muy formal, matemática. Por esta razón, es importante conocerla para tener un entendimiento que permita obtener el máximo aprovechamiento de ésta. Los conceptos que se presentan en este apartado deben permitir que se aproveche al máximo la tecnología, por lo que su entendimiento es indispensable. Se presentan esos conceptos a continuación.
  • 4. ¿Qué es una Relación Matemática/Tabla relacional? Un elemento fundamental en el modelo relacional es el concepto de relación matemática, o tabla relacional. Una relación o tabla relacional, en su forma más simple, es un conjunto de renglones (también conocidos como tuplas, registros, ocurrencias, o instancias). De una manera más formal, es el conjunto de tuplas, o renglones, formados por un conjunto de valores tomados a partir de “n” diferentes dominios. Se puede expresar de la siguiente manera: Relación R:  Dado un conjunto de “n” dominios, D1 a Dn, una relación R se define como el conjunto de tuplas ordenadas, denotadas como <d1, d2, …, dn> donde cada tupla es formada tomando un valor de cada uno de los dominios  Se denota asi: R = {<d11, d21, …, dn1>1, <d12, d22, …, dn2>2, …, <d1m, d2m, …., dnm>m } Por ejemplo, en la tabla relacional ALUMNO, cada renglón corresponde a los datos de un alumno en particular. La tabla o relación contiene entonces los renglones que representan los datos de los alumnos en una escuela. Cada uno de los datos almacenados en un renglón representa el valor de un atributo, para cada atributo que forma una tabla relacional. En la tabla de alumno, los atributos que describen a la tabla o relación son: Matrícula, Nombre, Apellido, Ciudad, Carrera y Fecha de Nacimiento. Finalmente, cada columna de la tabla relacional, cada atributo, contiene los valores del atributo para cada uno de los renglones u ocurrencias de la tabla. Los valores que un atributo puede tomar se conocen como el dominio del atributo, y es muy importante su definición, ya que permite cuidar las reglas de los valores válidos en un atributo. Cada tabla debe tener entonces la siguiente definición:  Nombre de la tabla  Nombre para cada columna o atributo que forma la tabla  El dominio sobre el cual está definido cada uno de los atributos que forman la tabla. Características de una tabla relacional
  • 5.  Una tabla relacional es una tabla bidimensional que posee la siguientes características:  Los renglones poseen datos acerca de una entidad, entendiendo como entidad a algo acerca de lo cual se desea almacenar datos.  Las columnas contienen datos acerca de los atributos de la entidad.  Cada posición en la tabla almacena un valor simple, atómico, de un atributo.  Todos los valores almacenados en una columna son del mismo tipo, es decir, están definidos sobre el mismo dominio.  Cada columna o atributo debe poseer un nombre único.  El orden de las columnas no es relevante.  El orden de los renglones no es relevante.  No pueden existir dos renglones idénticos en la tabla.  Se utiliza el nombre de tabla relacional, en lugar de relación, para evitar confundir con el nombre que se le da a una relación en el sentido natural del Español, es decir, la asociación entre elementos, aunque es importante aclarar que no todas las tablas son relaciones.  Los siguientes términos se utilizan de manera equivalente, para referirse a términos comunes en el área de Bases de Datos: Tabla/renglón/columna = archivo/registro/campo = relación/tupla/atributo.  El grado de una relación es el número de columnas o atributos de la misma y no puede ser cero, una tabla no puede existir sin columnas.  La cardinalidad de una tabla es el número de renglones o tuplas en la tabla.
  • 6. Que es una Llave Una llave está formada por uno o más atributos que permiten identificar de forma única a cada tupla o renglón en una tabla relacional. Una llave compuesta es una llave que está formada por dos o más atributos. Además:  Una tabla relacional puede tener sólo una llave primaria, pero pueden tener llaves adicionales, que son llamadas llaves candidatas o alternas  Una llave primaria se usa para – Establecer relaciones entre diferentes tablas – Permiten organizar la forma en que las tablas se almacenan – Son usadas para generar índices, mecanismos usados para el acceso eficiente a los datos Llave primaria En tablas en las cuales existe más de una llave, se selecciona a una de ellas, como la llave con la cual se realizan búsquedas o con la cual se establecen relaciones entre las tablas. Este es el caso de la llave primaria. Las llaves restantes son llamadas llaves alternas o secundarias. La selección de la llave primaria se considera normalmente sobre la base de ser la llave más pequeña, aunque no es una condición absoluta. El caso de una llave compuesta, que consiste de varios atributos, es mucho más compleja de manejar como llave primaria, por ejemplo.
  • 7. ¿Qué es un Esquema de Base de Datos Relacional? Un esquema de base de datos relacional es un conjunto de definiciones de tablas relacionales, y un conjunto de reglas o restricciones de integridad. La definición de tablas relacionales procede de definir los requerimientos de un área de aplicación. Las reglas de integridad definen todas aquellas condiciones, o restricciones, que los datos deben cumplir, para mantener la integridad de los datos, y su valor. Las reglas de integridad se agrupan en:  Estructurales, que son específicas al modelo de datos relacional.  Semánticas, que son específicas a la aplicación, impuestas por las reglas de negocio que la aplicación misma pide cumplir. Un ejemplo puede ser las condiciones que una empresa puede requerir para la contratación de un empleado, y que el sistema debe cumplir, lo que impone reglas que los datos de la base de datos debe cumplir. 2.3 ¿Qué son las reglas de Integridad en una Base de Datos Relacional? Las reglas de integridad en una base de datos permiten que la información almacenada en la misma, posea la consistencia e integridad requerida por sus usuarios. Estas reglas provienen de la definición misma del modelo relacional, pero están dirigidas a que su cumplimiento garantice que los datos sean correctos, o consistentes. Por su importancia es indispensable que se conozca sobre las mismas, que se definan en la
  • 8. creación de la base de datos, y que el acceso a la base de datos cumpla con ellas. A continuación se presentan las bases del manejo de reglas de integridad, para que se busque su cumplimiento. Reglas de Integridad Estructurales del Modelo Relacional: 1. Regla de Integridad de Dominio. Hace referencia a que los valores de los datos deben ser atómicos. El dominio de cada atributo debe estar compuesto de valores atómicos, por lo tanto no puede ser un valor compuesto de otros valores más simples, como un arreglo, o un registro de valores. Si se requiere almacenar una dirección por ejemplo, será necesario separar en diferentes atributos, como Calle, número, colonia, ciudad. 2. Regla de Integridad de Llave. Establece que la llave de una entidad debe ser única. 3. Regla de Integridad de entidad: Establece que no se permite un valor nulo como parte de una llave primaria. El valor nulo es permitido para todos los dominios, y se utiliza para cuando el valor del atributo no está definido, o no aplica, y el dominio definido para el atributo lo permite. Por ejemplo, el dominio de NumeroDeEmpleadoDelJefe en la tabla de Empleados, cuando se trabaja en el registro del director de la empresa, y el valor de este número no aplica para el director. Se almacena entonces un NULO. 4. Regla de Integridad referencial: Las referencia de una tabla a otra tabla debe ser con valores de llaves consistentes. ¿Qué significa la regla de Integridad referencial? La regla de integridad referencial sirve para forzar que las relaciones entre tablas, que se establecen mediante llaves, mantengan siempre datos consistentes entre las mismas. Las relaciones entre las tablas se establecen entre renglones de una tabla con renglones en la segunda tabla. Estas relaciones se establecen mediante las llaves, donde la llave primaria de una tabla se replica en otra tabla, para establecer la relación. La réplica de la llave primaria en otra tabla, recibe el nombre de llave foránea (foreign key). ¿Qué es una llave foránea? Una llave foránea (FK) es uno o más atributos en una tabla, que son la llave primaria en otra tabla, inclusive la misma. La llave foránea debe cumplir con: 1. Los atributos que forma la FK deben estar definidos en los mismos dominios que los atributos que forman la PK relacionada a la FK. La condición hace referencia a que los valores deben coincidir entre la FK y la PK, no sobre los nombres de los atributos, por lo cual los nombres en ambas llaves pueden ser diferentes. 2. El valor de la FK en un renglón de la tabla, debe coincidir con un valor de la PK en la otra tabla, o ser un valor NULO. Esto garantiza que la información es consistente entre las tablas que mantienen una relación entre ellas.
  • 9. Para mostrar estas relaciones en un diagrama, se dibuja una flecha que va de la FK a la PK, mostrando la relación entre ambas tablas. En el siguiente ejemplo se muestra la relación existente entre un Cliente, que tiene una OrdenDeCompra colocada en la empresa. En general, las reglas de integridad referencial pueden ser definidas entre dos tablas, en cualquier dirección, e inclusive pueden ser definidas entre ocurrencias o renglones de la misma tabla. Ejemplo: ¿qué relaciones se pueden definir entre un departamento académico y los profesores que trabajan en él? Un departamento académico se asocia con los diferentes profesores que trabajan en él. Por otro lado un profesor es jefe o director de un departamento académico. DISEÑO DE UN SISTEMA QUE UTILIZA UNA BASE DE DATOS El diseño de una base de datos relacional puede seguir diferentes caminos. La primera opción toma como base la observación del mundo real bajo estudio, generando un conjunto de tablas, que contengan los atributos y las restricciones de integridad sobre las mismas. Otra opción es dividir el diseño en dos fases:  definir el modelo conceptual y su esquema  transformar el esquema conceptual en un esquema relacional mediante un conjunto de reglas de transformación Aunque la normalización (tema que se cubre posteriormente) es una base muy importante para el diseño de una base de datos, este diseño no puede limitarse a la aplicación exclusiva de la teoría de la normalización. El diseño de una base de datos, por otro lado, tiene múltiples puntos de vista, y formas de desarrollarse, de acuerdo a esos puntos de vista. Para este curso, la idea del diseño es que se convierta en una proceso práctico, que facilite el proceso de diseño. En base a esos puntos de vista, un proceso de diseño práctico, incluye las siguientes fases: Fase 0: Análisis de requerimientos. (No forma parte del proceso de diseño) Aunque esta fase realmente corresponde a la fase de análisis de un proyecto, se presenta con el fin de establecer que de ésta fase se obtiene la materia prima para el diseño de la base de datos. De esta fase se requiere obtener los requerimientos de datos que el sistema bajo análisis ha formalizado. El documento de análisis, en la parte de requerimientos de datos, es
  • 10. entonces la entrada al proceso de diseño. Fase 1: Diseño conceptual de la base de datos Esta fase puede ser considerada tanto parte de la fase de análisis de requerimientos, como parte de la fase de Diseño. Es decir, para algunos puede formar parte del análisis de requerimientos, donde el producto de esta fase es el modelo de datos construido en base a una herramienta específica. Para otros, esta actividad corresponde a la fase de diseño de software, específicamente, del diseño de la base de datos. Para este caso se considera parte del diseño de la base de datos. Esta fase corresponde a la definición del esquema conceptual, que es el esquema que define el modelo de datos a alto nivel, independiente de cualquier sistema de administración de bases de datos. Por ser un modelo abstracto, no puede utilizarse para definir la estructura de la base de datos. Fase 2: fase de diseño lógico (Transformación del modelo de datos o esquema conceptual, al SMBD a utilizar). En esta fase se transforma la salida del diseño conceptual, o esquema conceptual, al esquema de la base de datos en el modelo de datos del DBMS a utilizar. Fase 3: Diseño de la base de datos física Consiste en definir las estructuras de almacenamiento y de acceso para alcanzar una rendimiento óptimo de las aplicaciones que se ejecutarán sobre la base de datos. Se tienen diferentes criterios para la definición de la base de datos física: el tiempo de respuesta de ejecución de las aplicaciones y consultas a la base de datos, la utilización del espacio de almacenamiento disponible o el volumen de transacciones por minuto, que se ejecutan sobre la base de datos Estas fases son genéricas, por lo que deben revisarse para el caso particular de cada empresa.