1. El documento describe conceptos básicos de bases de datos, incluyendo su propósito de almacenar datos de manera integrada para permitir el acceso y compartición de la información. 2. Explica los beneficios de usar una base de datos como la eliminación de redundancia, la integridad y consistencia de los datos, y el acceso concurrente. 3. También introduce conceptos clave como el modelo entidad-relación para el diseño de bases de datos y el uso de tablas, atributos y relaciones para representar los datos.
1. Uso de Excel y Access para el desarrollo de
aplicaciones administrativas empresariales
Administración de Base de Datos
Contenido
Conceptos básicos y su aplicación
El propósito de una base de datos
Ventajas al utilizar una base de datos
Definición de base de datos
Modelo Entidad- Relación
Diagramas Entidad Relación (DER)
Entidades, Atributos
Descripción de relaciones
Tipos de relaciones
Modelo de datos
Lenguaje de definición de datos
Lenguaje de manipulación de datos
Modelo relacional
Relación matemática / Tabla relaciona
Qué es una llave
Qué es un esquema de base de datos relacional
Reglas de integridad estructurales
2. Llave foránea
Diseño de un sistema que utiliza base de datos
Conceptos básicos y su aplicación
El área de bases de datos ha sido un área muy
importante dentro de la Ciencia de la Computación y
más recientemente como parte esencial de las
Tecnologías de Información. Al decir que el mundo vive
en la era de la información, lo primero que se viene a la
mente es el lugar donde se almacenan los datos
requeridos para producir información, las Bases de
Datos.
El propósito de una Base de Datos es:
… ayudar a la gente y a las organizaciones a llevar un
registro de las cosas, de aquellos objetos acerca de
los cuales les interesa guardar datos. Estos datos son
los que permitirán generar información de esas cosas
u objetos. Para comprender por que es importante
este almacenamiento de datos, se puede primero
analizar que problemas se presenta cuando se
3. utilizan solo datos sin la estructura que ofrece una
Base de Datos:
Al tener sistemas aislados, con diferentes medios
en los cuales se almacena información, un mismo
dato puede estar almacenado en diferentes lugares
Al estar el mismo dato almacenado en diferentes
lugares, puede tener diferentes valores en esos
diferentes lugares, lo que puede provocar
inconsistencias, si no se logra tener esas copias
con la información consistente
La privacidad de datos se ve afectada, debido a
que los departamentos necesitan compartir datos,
pero no todos los que custodian, solo los que
consideran pueden compartir, creando problemas
al no contar con todo lo que necesitan, aunque la
empresa pueda tenerlos disponibles.
En contraste, las bases de datos almacenan los
datos en tablas simples, donde cada una de ellas
está definida para apoyar un tema o área
especifica. Esto permite mantener una definición
sencilla, y un uso sencillo de la tabla, en
consecuencia. Las tablas poseen una estructura
que permite relacionarlas fácilmente entre si, a
través del uso de llaves, o campos comunes, que
permiten una navegación sencilla y natural a
4. través de ellas, siempre y cuando su diseño sea el
correcto.
En la siguiente figura se muestra lo que es una
arquitectura de base de datos, donde se observa que
los datos son independientes de los programas que
los utilizan, lo que ofrece beneficios al eliminar los
problemas de redundancia.
Las ventajas de utilizar una Base de Datos, a través del
software de administración, se puede entender
claramente en los siguientes casos:
1. Una base de datos permite almacenar grandes
volúmenes de datos, con un mínimo de datos
duplicados. Esto permite tener un acceso rápido y
eficiente a los mismos, cuando se requiere obtener
información a partir de ellos. Al estar almacenados
en un lugar común, es factible aplicar reglas de
integridad, que permite validad sus consistencia.
2. La información almacenada en una base de Datos
se integra eficientemente, y no posee limitaciones
impuestas por la organización de la empresa. Esta
integración permite que los datos seas usados
eficientemente, y con un mínimo de problemas de
integridad, por diferentes usuarios y
departamentos en toda la organización. Esto le
ofrece como beneficio a un administrador tener
acceso a datos a los cuales antes no tenía acceso,
por estar almacenados en diferentes medios y
sistemas.
5. 3. Un beneficio muy importante se asocia a la calidad
en los servicios de datos. La base de datos permite
tener una durabilidad y permanencia de los datos
que no es cuestionable. Otro aspecto relacionado a
esta ventaja es que las transacciones que se
ejecutan directamente sobre la base de datos
quedan registradas permanentemente, lo que
permite su acceso posterior, para cualquier
consulta, o para la protección ante cualquier falla
del sistema.
4. En teoría, una base de datos dura indefinidamente,
hasta que se decide guardarla en un ambiente
fuera del uso directo de un sistema, o se decide
borrarla definitivamente.
5. La durabilidad de una base de datos permite la
recuperación de los datos a un estado estable,
antes de ocurrir la falla. Esto da la seguridad
necesaria para ofrecer datos confiables a cualquier
sistema de misión crítica de una empresa, como
sería el sistema en línea de ventas, o en general,
cualquier sistema en línea, tal como los que
forman un negocio basado en Internet.
6. Un Sistema de Administración de Bases de Datos
permite compartir los datos de una Base de Datos
sencilla y eficientemente, a una comunidad de
usuarios diferentes. Las vistas son el medio que el
software de administración de base de datos
ofrece para que un grupo de usuarios tenga acceso
solo a la porción de la base de datos a la cual ellos
tienen derecho de acceso. De la misma forma, para
un equipo de desarrollo de una aplicación, una
vista le permite el acceso a solo los datos que
tienen derecho, de acuerdo a los requerimientos
que el sistema bajo desarrollo debe resolver.
7. El acceso concurrente a los datos es otra de las
ventajas. Este acceso permite que diferentes
usuarios, a través de sus aplicaciones, accedan a
los datos, mezclando sus operaciones, con la
6. seguridad que las mismas serán ejecutadas de tal
forma que no se afecten negativamente entre si.
Esta es una condición indispensable para el uso de
una base de datos desde Internet.
8. Finalmente, la seguridad. Este es un componente
crítico en cualquier base de datos que puede ser
accesada por Internet. Las técnicas de seguridad y
métodos de acceso que una base de datos ofrece
hoy soy de tal forma seguros que el uso es de tal
forma natural para todos los que acceden
directamente a la misma. Se previene el acceso no
autorizado a la base de datos, los mensaje se
encriptan de tal forma que es casi imposible
decodificarlos. Con esto se ofrece un ambiente
seguro, que permite trabajar de manera confiable
con la base de datos.
Definición de Base de Datos
La Tecnología de Bases de datos es hoy un elemento común en la mayoría
de todas las aplicaciones de computadoras o tecnología de Información.,
sin importar el tipo de aplicación, o el giro de la compañía., sea un
sistema financiero en un banco, o un sistema de punto de venta en un
supermercado, o un sistema de control de producción en una empresa
manufacturera. En todos los casos elementos comunes de Tecnología de
Información son tanto las Bases de Datos como los Sistemas de
Administración de Bases de Datos requeridos
La gente interactúa normalmente con Bases de Datos, y sus tecnologías
asociadas. Para dejar en claro estos términos y tecnologías, se definen a
continuación, para aclarar los temas principales que se cubren en este
curso. Los términos a definir y que se usarán con esta definición en el
resto de curso son:
Datos.
Antes de definir que es una Base de Datos es primordial entender que es
un dato. Los datos son hechos, que sirven para describir a objetos, gente,
o eventos. Son la materia prima utilizada para producir información.
7. Base de Datos.
Para hablar de una definición de base de datos se debe primero
entender algunos requerimientos que deben ser resueltos:
La necesidad de compartir datos, entre diferentes usuarios, y que
los datos presenten una relación entre ellos, y que estén diseñados
para cumplir las necesidades de información de la empresa, y de
sus diferentes partes que la forman
Una definición de los datos integrada, que ofrezca una definición de
los mismos, para poder tener la independencia requerida entre los
datos de la empresa, y los programas de aplicación que los van a
utilizar
Se requiere de un modelo que represente los datos de la empresa,
compuesta comúnmente por entidades, atributos, y relaciones
Esto permite tener la primera definición de una base de datos:
Es una colección integrada, de datos relacionados. Dicho de otra forma:
colección auto descrita de registros relacionados o tablas. Algunos de sus
componentes son:
– Datos del usuario
– La Metadata, o datos acerca de la estructura
de la base de datos misma
– Indices y estructuras de datos relacionadas
– Procedimientos almacenados (Stored
procedures), o programas o módulos
almacenados dentro de la base de datos, y que
sirven para su manipulación
– Triggers, o procedimientos que se ejecutan
cuando ocurre un evento o actividad particular
sobre la base de datos
8. – Metadata de aplicaciones, o datos que
permiten describir las aplicaciones que se
ejecutan sobre la base de datos
Dos características son esenciales en la definición de
una Base de Datos:
Datos relacionados.
– Esta característica implica el que los datos representan
hechos, relacionados lógicamente, acerca de aspectos del
mundo real que son de interés para el área que apoya una
aplicación. Por ejemplo, los datos que se necesitan en una
Base de Datos orientada al área de administración de una
empresa, en la cual se manejan datos de: clientes, pedidos que
los clientes realizan, los artículos que los pedidos incluyen, el
surtido de los pedidos, la facturación a los clientes de sus
pedidos entregados, los pagos que los clientes realizan sobre
sus facturas, etc. Lo mismo se puede hacer para describir los
datos que se manejan en el área de manufactura de una
empresa.
Datos integrados.
– Esta característica implica que los datos para múltiples
aplicaciones se almacenan juntos, y pueden ser manipulados
de igual forma por dichas aplicaciones. Al estar almacenados
juntos, los datos puedes compartirse, permitiendo que
múltiples aplicaciones las utilicen, sin hablar de fronteras,
que establecen normalmente barreras artificiales para este
uso compartido. Un buen ejemplo es la información que se
genera cuando un área de la empresa registra la información
de una orden interna para compra de un producto. Esta
información es compartida y utilizada por el área interna de
compras, que genera una orden de compra al proveedor,
quien surte la orden que será recibida en el almacén, y cuya
información comparte con contabilidad, que la requiere para
sus registros. Las cuentas por pagar atienden las facturas de
los proveedores, en base a la información de los pedidos
9. entregados. Esto ejemplifica la necesidad y la facilidad para
compartir estos datos.
Ventaja del enfoque de uso de una base de datos
Un beneficio muy importante asociado al uso de loas
bases de datos es:
El acceso controlado a los datos. Esto redunda
en beneficios asociados por el uso de
o Un sistema de seguridad, que permita el uso
de la base de datos solo por el personal
autorizado para el uso de la base de datos.
o Un sistema de control de la integridad, que
permita que los datos almacenados cumplan
con las reglas de integridad definidas para
los mismos, y que garanticen a su ves la
integridad y consistencia de la base de
datos
o Un sistema de control de concurrencia., que
permita la ejecución de transacciones
concurrentes sobre la base de datos, sin
perder la integridad de los datos
almacenados.
10. o Un sistema de recuperación, que permita
que la base de datos sea restablecida a un
estado correcto o válido de la base de datos,
justo antes de que una falla interrumpiera
su uso por parte de los programas de
aplicación
o Un mecanismo de vistas, que permita a los
usuarios solo acceder a los datos que ellos
necesitan usar.
De la discusión de los conceptos de bases de datos se
desprende la importancia de hablar de un Sistemas de
Administración Bases de Datos, por lo que se incluye
este concepto, para su discusión a la luz del concepto
de bases de datos. Este concepto será posteriormente
presentado.
11. Modelo Entidad – Relación
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, asi como las relaciones entre ellas. Este
modelo sirve como base para poder crear una base de
datos. El enfoque de modelación mas 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.
El modelo de Entidad Relación, fue propuesto por Peter
Chen, en 1976. Usado como el modelo sobre el cual se
define el modelo de datos requerido por una aplicación.
Crea un modelo de datos en términos de: entidades,
sus atributos y asociaciones entre las ocurrencias de
sus entidades, llamadas relaciones (Relationships).
Se proponen 3 clases de objetos:
12. • Entidades
• Atributos
• Relaciones
Entidades:
• Objetos principales acerca de los cuales se almacena
información.
• Cosas de importancia o interés para un área de
negocios o para un sistema que requiere del
almacenamiento de datos.
• Ejemplos: Cliente, Producto, Inventario, Proveedor,
Factura
Las entidades se clasifican en Fuertes y Débiles
• Entidad Fuerte: Posee un identificador que determina de manera única
a las ocurrencias de la entidad. Tiene existencia propia, que no depende
de la existencia de otras entidades. Se representa:
• Entidad Débil: Deriva su existencia de los atributos que son
identificadores de una o más entidades padres.Su existencia está limitada
o determinada por la existencia de las entidades padres. Se representa:
13. Atributos:
Describen a las entidades.
Representan características o cualidades de una entidad.
Ejemplos: nombre de una persona, nombre de ciudad, número de
empleado, fecha de contratación, monto a pagar .
Los atributos se representan de la siguiente forma:
Identificador: identifican de manera única a cada ocurrencia de la
entidad.
Descriptor:
Describen una característica o cualidad de la entidad
Representación de las relaciones:
• Permiten representar diferentes tipos de asociaciones entre las
entidades.
• Tienen ‘semántica’, es decir, describen información acerca de la forma
en que se asocian las entidades.
• Se representan así:
(existen múltiples formas de representarlas)
Diagramas de Entidad relación (DER)
14. Propósito:
• Mostrar las Entidades y cómo éstas se relacionan.
• El DER se concentra sólo en las entidades de datos
Ejemplo de construcción de un Diagrama de Entidad Relación
Pregunta inicial:¿Cuáles son las entidades de interés acerca de las cuales
se desea almacenar datos ?
• Para un negocio comercial podrían ser:CLIENTES, PRODUCTOS,
INVENTARIO, PROVEEDORES, FACTURAS, ORDENES DE
COMPRA.
Construcción:
• Dibujar un bloque para cada entidad identificada.
• Nombres de las entidades:
se recomienda que sean en singular
Ejemplo: CLIENTE en lugar de CLIENTES.
• Siguiente pregunta:
¿ Cuál relación existe entre cada par de entidades ?
Ejemplos:
Un CLIENTE se puede asociar con muchas FACTURAS, y cada
FACTURA puede ser sólo asociada a un CLIENTE.
Tomando PRODUCTO y FACTURA:
Un PRODUCTO puede asociarse con muchas FACTURAS, y una
FACTURA puede ser asociada a muchos PRODUCTOs.
Tomando PRODUCTO e INVENTARIO:
Un PRODUCTO puede asociarse con una ocurrencia de
INVENTARIO, y una ocurrencia de INVENTARIO puede ser asociada a
un solo PRODUCTO.
Representación:
15. Entidades en un solo diagrama :
¿Qué pasa con respecto al nombre de las relaciones?
Concepto importante acerca del análisis ER: una relación muchos-a-
muchos puede ser dividida en 2 relaciones uno-a-muchos, identificando la
"entidad intersección".
Por ejemplo:
La relación muchos-a-muchos entre PRODUCTO y FACTURAs
Puede ser vista como dos relaciones 1 a muchos:
Se añade una entidad "intersección" entre las dos originales:
16. Pregunta:
¿ Qué permite asociar a un PRODUCTO con muchas FACTURAS, o a
una FACTURA con muchos PRODUCTOs ?
Una respuesta: ARTICULO-VENDIDO, o DETALLE-FACTURA
Para la relación muchos-a-muchos entre PRODUCTOs y
PROVEEDOREs:
Otra entidad: "ENVIO-PRODUCTO" , cualquier proveedor puede surtir
cualquier producto
Para cada relación uno-a-uno:
Se pregunta si las dos entidades son realmente entidades separadas, o
pueden ser combinadas.
Ejemplo: Entre PRODUCTO e INVENTARIO no existe una razón
importante para mantener una entidad separada describiendo el
inventario.
Diagrama de Entidad relación, resuelto:
17. EJERCICIO:
¿ Es una FACTURA una entidad, o es una relación entre un CLIENTE y
un PRODUCTO ?
Es posible encontrar argumentos para apoyar a ambos puntos de vista.
Condición clave para la diferenciación:
Si se puede definir un atributo identificador, es una entidad
Si no se le puede encontrar un atributo identificador y asocia otras
entidades, es una relación
Al analizar cada par de entidades, se pregunta por sus relaciones. Si
existen, deben ser clasificadas de acuerdo a los siguientes tipos de
relaciones:
" Cada División es administrada por uno, y solo un Gerente"
" Cada Gerente administra una, y solo una División"
18. "Cada Cliente puede tener una o más facturas con la empresa"
"Cada factura se asigna a un solo cliente"
" Cada proveedor suministra uno o más productos"
" Cada producto es suministrado por uno o más proveedores"
EJERCICIO:
¿ Es una FACTURA una entidad, o es una relación entre un CLIENTE y
un PRODUCTO ?
Es posible encontrar argumentos para apoyar a ambos puntos de vista.
Condición clave para la diferenciación:
Si se puede definir un atributo identificador, es una entidad
Si no se le puede encontrar un atributo identificador y asocia otras
entidades, es una relación
Descripción de Relaciones
Al analizar cada par de entidades, se pregunta por sus relaciones. Si
existen, deben ser clasificadas de acuerdo a los siguientes tipos de
relaciones:
19. " Cada División es administrada por uno, y solo un Gerente"
" Cada Gerente administra una, y solo una División"
"Cada Cliente puede tener una o más facturas con la empresa"
"Cada factura se asigna a un solo cliente"
" Cada proveedor suministra uno o más productos"
" Cada producto es suministrado por uno o más proveedores"
Relación obligatoria:
Una entidad puede estar relacionada en todas sus ocurrencias.
Ejemplo: DEPARTAMENTO y EMPLEADO
un DEPARTAMENTO debe estar asociado a uno o varios
empleados que trabajan en él.
Un EMPLEADO debe estar asociado a uno y solo un
DEPARTAMENTO
20. Es incorrecto tener ocurrencias de una entidad sin ocurrencias de
la otra.
Representación: obligatoria
Tipos de relaciones
Relación opcional:
Dos entidades pueden estar relacionadas, pero no en todas sus
ocurrencias.
• Ejemplo: EMPLEADO y PROYECTO.
o Un empleado puede estar asignado a un proyecto, a algunos
proyectos o a ninguno.
o Un proyecto puede estar autorizado, y no tener empleados
asignados.
Representación: opcional
Relación Unitaria
Una entidad puede estar relacionada consigo misma.
Ejemplo:
Es jefe de
Le reporta a
aaaaaaa
"Un empleado puede ser jefe de cero o más empleados" o
"Un empleado siempre reporta a otro empleado"
21. Sistema de Administración de Base de Datos.
Un Sistema de Administración de Base de Datos, o DBMS, (por sus
siglas en inglés, Database Management System) es de manera sencilla,
software para la creación y administración de bases de datos, y sus
sistemas asociados, en una computadora.
Las funciones principales de un DBMS son:
– La creación de bases de datos, sus tablas componentes, y las
estructuras de apoyo asociadas
– Permitir la lectura y escritura de los datos almacenados en
una base de datos
– Permitir el mantenimiento a las estructuras de una base de
datos
– Forzar el cumplimiento de las reglas de integridad definidas
para una base de datos
– Mantener el control de concurrencia a los datos, cuando se
presenta la ejecución concurrente de transacciones a la base
de datos
– Ofrecer los mecanismos de seguridad para el acceso a las
bases de datos definidas y mantenidas en el DBMS
– Ofrecer las facilidades de respaldo y recuperación de las
bases de datos, necesarias para garantizar la seguridad e
integridad de las bases de datos manejdas por el DBMS
Ejemplos de DBMSs comerciales: Oracle, DB2, Microsoft Access,
SQL Server
Que es una Base de Datos Relacional
Un sistema de Administración de Bases de Datos
permite que los datos permanezcan independientes de
los programas de aplicación que los manipula. Esta es
una característica muy importante, por todos los
beneficios que le ofrece a quien desarrolla programas
para accesarlos. 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
22. 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 como 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.
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, basada 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
Que 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
23. 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)
Que 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.
Que 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. (Modelo de Entidad – Relación)
24. Que 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:
Alu Fecha
mno Matrí Nom Apelli Ciuda Est de
Carrera
cula bre do d ado Nacimi
ento
Ing. En
4517 Monte 21/01/
José Pérez NL Electró
5 rrey 1980
nica
Ing. En
4655 Martí Hermo SO 12/06/
Luis Comput
0 nez sillo N 1981
ación
Lic. En
4712 Ren Gonz ME 13/09/
Toluca Econom
3 é ález X 1992
ía
25. 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.
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.
Que 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.
26. 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 mas 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.
27. 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 valore
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
28. = 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 solo 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.
29. Que 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.
Las reglas de integridad en una base de datos permiten
que la información almancenada 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
30. 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.
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.
3. Regla De Integridad referencial: Las referencia de
una tabla a otra tabla debe ser con valores de
llaves consistentes.
Que 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
31. en otra tabla, para establecer la relación. La replica de
la llave primaria en otra tabla, recibe el nombre de llave
foránea (foreign key).
Que es una llave foránea
Una llave foránea (FK) es uno o mas atributos en una
tabla, que son la llave primaria en otroa 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 Ventas realizadas a
los clientes, la llave foránea es ID Cliente en la tabla
Ventas
32. 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.
33. 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 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 un 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 esta fase se obtiene la materia prima
para el diseño de la base de datos. De esta fase
entonces se requiere obtener los requerimientos de
datos que el sistema bajo análisis ha formalizado. El
34. 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
35. 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.