0% encontró este documento útil (0 votos)
57 vistas24 páginas

Introducción a Sistemas de Bases de Datos

Los sistemas de bases de datos se diseñan para almacenar y manipular grandes cantidades de información de manera segura y eficiente. Proporcionan una visión abstracta de los datos para los usuarios y mecanismos para reducir la redundancia, mejorar el acceso a los datos y prevenir inconsistencias causadas por accesos concurrentes. Los sistemas de bases de datos utilizan software como los Sistemas Gestores de Base de Datos para definir estructuras de almacenamiento, manipular datos y garantizar la seguridad e integridad de la información.

Cargado por

svidart
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
57 vistas24 páginas

Introducción a Sistemas de Bases de Datos

Los sistemas de bases de datos se diseñan para almacenar y manipular grandes cantidades de información de manera segura y eficiente. Proporcionan una visión abstracta de los datos para los usuarios y mecanismos para reducir la redundancia, mejorar el acceso a los datos y prevenir inconsistencias causadas por accesos concurrentes. Los sistemas de bases de datos utilizan software como los Sistemas Gestores de Base de Datos para definir estructuras de almacenamiento, manipular datos y garantizar la seguridad e integridad de la información.

Cargado por

svidart
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Sistemas de bases de datos

Los sistemas de base de datos se diseñan para manejar grandes cantidades de información, la
manipulación de los datos involucra tanto la definición de estructuras para el almacenamiento de la
información como la provisión de mecanismos para la manipulación de la información, además un
sistema de base de datos debe de tener implementados mecanismos de seguridad que garanticen la
integridad de la información, a pesar de caídas del sistema o intentos de accesos no autorizados.
Un objetivo principal de un sistema de base de datos es proporcionar a los usuarios finales una visión
abstracta de los datos, esto se logra escondiendo ciertos detalles de como se almacenan y mantienen los
datos.

Objetivos de los sistemas de bases de datos

Los objetivos principales de un sistema de base de datos es disminuir los siguientes aspectos:

Redundancia e inconsistencia de datos

Puesto que los archivos que mantienen almacenada la información son creados por diferentes tipos de
programas de aplicación existe la posibilidad de que si no se controla detalladamente el almacenamiento,
se pueda originar un duplicado de información, es decir que la misma información este más de una vez
en un dispositivo de almacenamiento. Esto aumenta los costos de almacenamiento y acceso a los datos,
además de que puede originar la inconsistencia de los datos, es decir diversas copias de un mismo dato
no concuerdan entre si. Por ejemplo: se actualiza la dirección de un cliente en un archivo y que en otros
archivos permanezca la anterior.

Dificultad para tener acceso a los datos

Un sistema de base de datos debe contemplar un entorno de datos que le facilite al usuario el manejo de
los mismos. Por ejemplo en un banco uno de los gerentes necesita averiguar los nombres de todos los
clientes que viven dentro del código postal 11000 de la ciudad. El gerente pide al departamento de
procesamiento de datos que genere la lista correspondiente. Puesto que esta situación no fue prevista en
el diseño del sistema, no existe ninguna aplicación de consulta que permita este tipo de solicitud, esto
ocasiona una deficiencia del sistema.

Aislamiento de los datos

Puesto que los datos están repartidos en varios archivos, y estos pueden tener diferentes formatos, es
difícil escribir nuevos programas de aplicación para obtener los datos apropiados.

Anomalías del acceso concurrente


Para mejorar el funcionamiento global del sistema y obtener un tiempo de respuesta más rápido, muchos
sistemas permiten que múltiples usuarios actualicen los datos simultáneamente. En un entorno así, la
interacción de actualizaciones concurrentes puede dar por resultado datos inconsistentes. Para prevenir
esta posibilidad debe mantenerse alguna forma de supervisión en el sistema.

Problemas de seguridad

La información de toda empresa es importante, aunque unos datos lo son más que otros, por tal motivo se
debe considerar el control de acceso a los mismos, no todos los usuarios pueden visualizar alguna
información, por tal motivo para que un sistema de base de datos sea confiable debe mantener un grado
de seguridad que garantice la autentificación y protección de los datos. En un banco por ejemplo, el
personal administrativo sólo necesita ver la parte de la base de datos que tiene información acerca de los
distintos empleados del banco y no otro tipo de información.
Base de datos
Es una colección de archivos interrelacionados, son creados con un DBMS. El contenido de una base de
datos engloba a la información concerniente (almacenadas en archivos) de una organización, de tal
manera que los datos estén disponibles para los usuarios, una finalidad de la base de datos es eliminar la
redundancia o al menos minimizarla. Los tres componentes principales de un sistema de base de datos
son el hardware, el software DBMS y los datos a manejar, así como el personal encargado del manejo del
sistema.

Sistema Manejador de Base de Datos (DBMS)


El sistema manejador de bases de datos es la porción más importante del software de un sistema de base
de datos. Un DBMS es una colección de numerosas rutinas de software interrelacionadas, cada una de las
cuales es responsable de alguna tarea específica.
Las funciones principales de un DBMS son:
● Crear y organizar la Base de datos.

● Establecer y mantener las trayectorias de acceso a la base de datos de tal forma que los datos
puedan ser accedidos rápidamente.
● Manejar los datos de acuerdo a las peticiones de los usuarios.
● Registrar el uso de las bases de datos.

● Interacción con el manejador de archivos.

● Respaldo y recuperación.
Consiste en contar con mecanismos implantados que permitan la recuperación fácilmente de los
datos en caso de ocurrir fallas en el sistema de base de datos.
● Control de concurrencia.
Consiste en controlar la interacción entre los usuarios concurrentes para no afectar la
inconsistencia de los datos.
● Seguridad e integridad.
Consiste en contar con mecanismos que permitan el control de la consistencia de los datos
evitando que estos se vean perjudicados por cambios no autorizados o previstos.
El DBMS es conocido también como Gestor de Base de datos.
La figura muestra el DBMS como interfase entre la base de datos física y las peticiones del usuario. El
DBMS interpreta las peticiones de entrada/salida del usuario y las manda al sistema operativo para la
transferencia de datos entre la unidad de memoria secundaria y la memoria principal.
En sí, un sistema manejador de base de datos es el corazón de la base de datos ya que se encarga del
control total de los posibles aspectos que la puedan afectar.
Access es el sistema manejador de base de datos que se utilizará en este curso, el cual proporciona una
forma eficiente de estructurar la información de nuestra base de datos y herramientas amigables para
guardar y recuperar información de la misma.
Otros sistemas de base de datos:
● MySQL

● PostgreSQL

● Informix

● Oracle

● SQL Server
Tipos de Bases de Datos
La mayoría de las bases de datos pueden ser configuradas para trabajar stand-alone, en red o en un
ambiente cliente servidor.

Bases de Datos Stand-alone

En este tipo de Base de Datos:


● Los datos residen localmente (en el disco duro de la máquina).
● Los datos son utilizados por el usuario que esta trabajando en esa máquina.
No es posible que:
● Dos usuarios accedan a la misma información en forma simultánea

Servidores de Archivos

En este tipo de configuración, una sola computadora esta dedicada a almacenar la Base de Datos,
controlar el acceso y proveer seguridad. Los usuarios accederán en forma remota a los datos a través de
la red, como si estuviesen en sus propias máquinas. En la mayoría de los casos múltiples usuarios pueden
acceder a los mismos datos en forma simultanea.
Los servidores de archivos posibilitan que se compartan los datos. Grandes volúmenes de información
viajarán por la red, ya que el procesamiento de la información es realizado en forma local y no en el
servidor.
En este caso las tareas del servidor son únicamente mantener la integridad y la seguridad de la Base de
Datos.

Cliente/Servidor

La arquitectura Cliente/Servidor se refiere a la tecnología que combina la capacidad de los grandes


sistemas de manejadores de Base de Datos con las facilidades del PC.
Existe una máquina dentro de la red dedicada a contener el manejador de Base de Datos, el cual controla
el acceso y la seguridad de la información almacenada. El servidor tiene un “motor” que es el encargado
de la integridad y procesamiento de los requerimientos de los datos.
En este tipo de arquitecturas las aplicaciones son almacenadas en cada estación de trabajo, mientras que
el motor de Base de Datos se instala en el servidor.
Cuando la aplicación cliente realiza una tarea, solicita los datos al servidor de Base de Datos. Este en
lugar de enviar una copia de la Base de Datos entera al cliente, envía solamente un subconjunto de los
mismos reduciendo el tráfico en la red y el proceso en la estación de trabajo.
Bases de datos relacionales
Las bases de datos relacionales son el tipo de bases de datos actualmente más difundido. Los motivos de
este éxito son fundamentalmente dos:
● ofrecen sistemas simples y eficaces para representar y manipular los datos

● se basan en un modelo, el relacional, con sólidas bases teóricas

El modelo relacional
El modelo relacional fue propuesto originariamente por E.F. Codd en un ya famoso artículo de 1970.
Gracias a su coherencia y facilidad de uso, el modelo se ha convertido en los años 80 en el más usado
para la producción de DBMS.
Dicho modelo se basa en el concepto matemático de relación, que gráficamente se representa mediante
una tabla. Codd, que era un experto matemático, utilizó una terminología perteneciente a las
matemáticas, en concreto de la teoría de conjuntos y de la lógica de predicados.
La estructura fundamental del modelo relacional es precisamente esa, "relación", es decir una tabla
bidimensional constituida por líneas (tupla) y columnas (atributos). Las relaciones representan las
entidades que se consideran interesantes en la base de datos. Cada instancia de la entidad se corresponde
con una tupla de la relación, mientras que los atributos de la relación representan las propiedades de la
entidad.
Por ejemplo, si en la base de datos se tienen que representar personas, se podrá definir una relación
llamada "Personas", cuyos atributos describen las características de las personas (tabla siguiente). Cada
tupla de la relación "Personas" representará una persona concreta.

En realidad, siendo rigurosos, una relación es sólo la definición de la estructura de la tabla, es decir su
nombre y la lista de los atributos que la componen. Cuando se puebla con las tuplas, se habla de
"instancia de relación". Por eso, la tabla anterior representa una instancia de la relación persona. Una
representación de la definición de esa relación podría ser la siguiente:
Personas (nombre, apellido, fecha_nacimiento, sexo, estado_civil)

Dominios
Cada atributo de una relación se caracteriza por un nombre y por un dominio.
El dominio indica qué valores pueden ser asumidos por una columna de la relación. A menudo un
dominio se define a través de la declaración de un tipo para el atributo (por ejemplo diciendo que es una
cadena de diez caracteres).
Los dominios más comunes pueden ser:
● texto (cadena de caracteres)
● números
● fechas
● verdadero/falso (booleano)
De forma casi inherente al término dominio aparece el concepto restricción para un atributo. Cada
atributo puede adoptar una serie de valores de un dominio restringiendo determinados valores. El atributo
"EDAD" toma sus valores del dominio N (números naturales) pero se puede poner como restricción
aquellos que estén en el intervalo (0-120), pero dentro de la entidad "PROFESOR" se podría restringir
aun más el intervalo, puesto que la edad mínima para trabajar es de 18 años y la máxima de 65, por lo
tanto el intervalo sería (18-65).
Otro ejemplo puede ser para el atributo "sexo" de la relación "Personas" para el cual se puede definir un
dominio donde los únicos valores válidos sean 'M' y 'F'; o bien para el atributo "fecha_nacimiento" se
puede definir un dominio por el que se consideren válidas sólo las fechas de nacimiento después del
1-enero-1930.
El motor de base de datos se ocupará de controlar que en los atributos de las relaciones se incluyan sólo
los valores permitidos por sus dominios.
La característica fundamental de los dominios de una base de datos relacional es que sean "atómicos", es
decir que los valores contenidos en las columnas no se puedan separar en valores de dominios más
simples.
Componentes de una base de datos
Para manejar correctamente la información de una base de datos es necesario representarla de la mejor
manera posible; para ello es fundamental conocer los principales aspectos de la estructura de una base de
datos.

Como se vio anteriormente el modelo relacional utiliza los conceptos de relación,


atributos y tuplas, pero cuando se crea una base de datos en un manejador de bases de
datos (en nuestro caso Access) esos conceptos cambian por los de tabla, campos y
registros.

Haga clic aquí para ver las correspondencias

Tablas

La información de una base de datos se almacena en tablas, cada una de estas tablas representa una
relación o entidad; es decir un objeto (Ej.: empleados, productos, clientes, socios, etc. ) y contiene lo
concerniente a ese objeto.
Una base de datos es una colección de tablas, o al menos una tabla.
En este ejemplo se quiere representar la realidad de un Video Club, sería necesario manejar toda la
información relativa a las actividades que se realizan en dicho establecimiento. Para poder representar
dichas actividades se utilizan las tablas, cada una de ellas maneja todos los datos de una categoría
específica de información; así entonces hay una tabla socios que contiene todas las características que
interesan para representar un socio del Video Club.
Siguiendo con este razonamiento se podrían definir las siguientes tablas:
Tabla Contenido
Socios Los datos de todos los socios del video.
Videos La información de todas las películas del video.
Préstamos Datos de todos los alquileres de películas.

Registros

Una tabla es una colección de tuplas o filas ; cada tupla representa una instancia del objeto, la cual se
denomina registro.

Siguiendo con el ejemplo:


En la tabla de SOCIOS cada registro almacena los datos de una persona, o en la tabla videos cada registro
es una película en particular.

Campos

Un campo se representa dentro de una tabla como una columna; contiene toda la información sobre un
atributo del objeto que representa la tabla (Ej.: la dirección, el apellido, el teléfono, fecha de ingreso, etc.).

El nombre del campo está dado por el cabezal de la columna.

Es necesario destacar que un campo debe contener únicamente el tipo de datos que concuerde con lo que
representa, es decir que todo campo tiene un rango de valores permitidos (dominio) Ej.: el rango de
valores permitidos del campo DIRECCIÓN serían cadenas de caracteres de un largo determinado.

Siguiendo con el ejemplo:


Los registros de la tabla SOCIOS representan una persona, los campos permiten determinar que
información es necesaria de esa persona. Es decir, en este ejemplo sería necesario contar con un número de
socio, el nombre y apellido del socio, la dirección, el documento, etc.
La planificación de la estructura de la base de datos, en particular de las tablas, es vital para la gestión
efectiva de la misma. Por ello es importante tener en cuenta que durante el diseño de una tabla se deben
determinar claramente los campos necesarios, definirlos en forma adecuada con un nombre especificando
su tipo y su longitud.
Diseño de una base de datos

Para que el trabajo con la información almacenada en las tablas de la base de datos sea eficiente y no cause
problemas el modificar, borrar o agregar registros, es necesario al diseñar la base de datos tener en cuenta
algunos aspectos importantes, para ello utilizaremos el siguiente ejemplo.

Ejemplo:

En la siguiente tabla se definieron los campos necesarios para almacenar toda la información que se desea tener
de las películas que se pueden alquilar en un Video Club.

Si se trabaja con la tabla creada de esta manera habría algunos inconvenientes.

Veamos...

1. El primer problema es la velocidad de acceso a los datos, dado que las tablas tendrán bajo este sistema
muchos datos repetidos (en el caso de este ejemplo se repetirán varias veces los datos Distribuidora,
Dirección y Teléfono cuando los videos pertenecen a una misma distribuidora), lo cual aumenta
innecesariamente el tamaño del archivo que contiene a la tabla.
2. Otro problema es si se desean realizar modificaciones, por ejemplo si cambia la dirección de la
distribuidora Halven se tendría que realizar la modificación en todos los videos que pertenecen a dicha
distribuidora.
3. Lo mismo pasaría si se se borraran todos los videos de una distribuidora, se perdería la dirección y el
teléfono, ya que no hay ningún registro que contenga dicha información y si mas adelante se desea
ingresar un video de esa distribuidora sería necesario tener registrado de alguna manera la dirección y el
teléfono.

Para poder solucionar los inconvenientes vistos anteriormente, se realizaron estos cambios:

TABLA VIDEOS

TABLA DISTRIBUIDORAS
● ¿Qué cambios se realizaron?
● Los inconvenientes vistos anteriormente, ¿Se solucionaron?
● ¿Cómo se accede a la información de la distribuidora si se conoce solo el
identificador del video?

Respuestas

Este ejemplo muestra la manera de diseñar una base de datos que se ajuste al Modelo Relacional, es decir que
los cambios que se realicen mantengan la integridad de la base de datos, se eviten redundancia de datos, etc.
(estos conceptos se verán en detalle más adelante)
Claves primarias y extranjeras

Otro aspecto a tener en cuenta cuando se define una base de datos siguiendo el modelo relacional es que
cada registro debe ser único. Es posible admitir la existencia de registros duplicados pero eso implicaría
la imposibilidad de identificar el registro en forma única y se debería resolver mediante programación.
Esto produce innumerables problemas que es preferible eliminar.

La forma de garantizar que un registro sea único dentro de una tabla es designar una clave primaria.

Claves primarias

La clave primaria es un campo o combinación de campos que identifican en forma exclusiva, única,
cada registro almacenado en una tabla. Dicho campo debe contener valores únicos dentro de la tabla.

A menudo se usa como clave primaria un código de identificación, pues este valor siempre es distinto
para cada registro. Por ejemplo: número de socio, código de video.

Es conveniente especificar una clave primaria al crear cada tabla.

Una tabla puede tener una sola clave primaria a pesar de que existan varias columnas que contengan
valores únicos. Estas columnas con valores únicos se pueden considerar claves candidatas.

Consideraciones para elegir la clave primaria

No existen reglas estrictas para elegir la clave primaria dentro de un grupo de claves candidatas. Sin
embargo puede haber algunas consideraciones a tener en cuenta

● No conviene que sean claves primarias los campos que pueden cambiar con frecuencia.
● Tampoco conviene que sean claves primarias los campos que pueden ser únicos en la tabla, pero la
realidad indica que pueden llegar a repetirse. Por ejemplo: el nombre del socio de un Video Club.
● La mayoría de los diseñadores de bases de datos prefieren utilizar claves primarias que sean
valores numéricos porque esto agiliza las búsquedas.

Ejemplo

Siguiendo con el ejemplo del Video Club la clave primaria de la tabla Socios es el campo IdSocio el cual
contiene el número de socio.

Ventajas

Las ventajas de establecer una clave primaria en cada tabla son las siguientes:

● Se aceleran las operaciones que se realicen sobre la tabla.


● Los registros se presentarán ordenados según la clave principal.
● Al agregar datos, no se permitirá introducir un registro que tengan el mismo valor de clave
principal que otro registro existente.
● Se podrán asociar o relacionar datos entre dos o más tablas.
Claves Extranjeras

La clave extranjera es un campo cuyos datos se refieren a las claves primarias de otra tabla de la base
de datos.

Ejemplo

Siguiendo con el ejemplo del Video Club la clave extranjera de la tabla Videos es el campo Distribuidora
el cual es clave primaria de la tabla Distribuidoras.
Índices
Cuando trabajamos con bases de datos es muy común el realizar búsquedas de información u operaciones
con registros que cumplan con un determinado requisito como por ejemplo saber cuál es el monto total
de todas la compras realizadas por un determinado cliente, tanto cuando buscamos información como
cuando queremos realizar operaciones de acuerdo a un criterio, es conveniente el uso de los Índices, dado
que aceleran las tareas.
Los índices se pueden crear sobre cualquier campo de una tabla y una tabla puede contener tantos índices
como campos la forman, sin embargo el uso abusivo de los índices aumenta el tamaño del archivo, por lo
tanto si bien son necesarios no es recomendable crearlos en forma indiscriminada, por otro lado si bien
son elementos que facilitan las tareas, no son imprescindibles para la ejecución de las mismas.
Como regla práctica, si dentro de una tabla se va a realizar búsqueda de datos de acuerdo a un criterio,
conviene que el campo sobre el cual se determina el criterio sea clave principal; si esto no es posible, ya
sea porque hay otro campo asignado como clave principal o porque las características del campo no lo
permiten, en ese caso conviene definir el campo como indexado; en nuestro caso de ejemplo, si vamos a
buscar los datos de los socios utilizando el nombre, es conveniente que el campo Nombre esté indexado.
Relaciones entre tablas

Relaciones entre tablas

Las relaciones entre tablas constituyen el concepto básico de un sistema de base de datos relacional.
Ayudan a recuperar en una forma sencilla, información de las distintas tablas de una base de datos y a
mantener la seguridad e integridad de esa información.
Una relación es una asociación de equivalencia entre un campo clave de una tabla y un campo
relacionado del mismo tipo en otra tabla. Por ejemplo, se puede establecer una relación entre un socio
y el código de socio en la tabla de préstamos, de esta forma se asociará en forma inmediata un conjunto
de préstamos con un socio determinado.

En una relación intervienen una tabla principal y otra relacionada; al establecer la relación se asocia el campo clave
de la tabla principal con otro equivalente de la tabla relacionada.
Dos campos de tablas distintas pueden actuar como componentes de una relación entre ambas cuando representan
el mismo tipo de información y tienen el mismo formato aunque no es absolutamente necesario que tengan el
mismo nombre de campo.

Ejemplo:

Como se vio anteriormente se puede acceder a los datos de una distribuidora, ya que existe un campo que funciona
como "nexo" entre ambas tablas. Ese "nexo" se define como una relación entre dichas tablas.
En la tabla Distribuidoras el campo idDistribuidora es clave primaria y en la tabla
Videos el campo Distribuidora es clave extranjera.
Observación

De esta forma es más fácil ver como se obtiene un mejor acceso e integridad de la información
Acceso a la información
Mantener la información de una base en tablas brinda independencia en los datos y ayuda a evitar redundancia
(ej.: Si no existiera la tabla distribuidoras tendría que tener campos con la información del proveedor por cada
video existente y se reiterarían datos innecesariamente); por otra parte si la información de estas tablas no tuviera
ninguna relación entre sí, no habría forma de saber que distribuidora provee cuales películas.
Establecer relaciones entre tablas es necesario para recuperar en forma coherente la información de ambas tablas;
permitiría por ejemplo armar un listado que mostrase la información de varias tablas a la vez (ej.: se podría listar las
distribuidoras que incluyera los nombres de las películas que proveyó).
Integridad de la información
La integridad referencial permite manejar con seguridad plena la información de una base de datos.
Al establecer integridad referencial no se permitirá:
Hacer referencia a datos inexistentes Cuando una relación establecida entre las tablas de Distribuidoras y
Videos exija integridad referencial, no se podrá asignar a un video
un código de distribuidora de una empresa que no exista en la tabla
Distribuidoras. Por la tanto, no se podrá hacer referencia a una
empresa que no exista en el momento de escribir el código de
distribuidora en la tabla Videos. Notar que un correcto manejo de
las relaciones de una base de datos ayuda a asegurar que la
información de la base tiene sentido.
Eliminar información relacionada Si se eliminara una distribuidora quedarían registros de videos con
referencias a una empresa que no existe más, al exigir integridad a
la relación no se puede borrar accidentalmente un registro de una
distribuidora.
Cambiar información relacionada Esta situación es similar a la anterior, si se cambiara el código de la
empresa distribuidora en lugar de borrarlo el registro.
Tipo de relaciones
Según cual fuera el tipo o naturaleza de la información u objetos que intervengan en una relación; estas pueden
ser de tres tipos:
● uno a uno
● uno a varios
● varios a varios

Tipo Descripción Ejemplo


Si en la base de datos se contara con dos tablas de Socios;
Cada registro de la tabla principal una para los datos de manejo diario y otra para datos
Uno a uno se corresponde con un único confidenciales. Un socio en una tabla se relacionaría
registro en la tabla relacionada. únicamente con un registro de la otra (sus propios datos
privados y no los de otra persona)
Un registro de la tabla principal se Este es el tipo más común de relaciones.
Uno a varios corresponde con varios de la tabla Tal es el caso del ejemplo presentado anteriormente, donde
relacionada. una empresa provee varias películas.
Un registro de la primer tabla se
corresponde con varios de la
Un socio puede alquilar varias películas y una película
Varios a varios segunda tabla y un registro de la
puede ser alquilada por varios socios.
segunda tabla se corresponde con
varios de la primera tabla

Varios a varios

Las relaciones de varios a varios no pueden ser implementadas por los manejadores de Base de Datos, incluyendo
a Microsoft Access.
Si se hubiera pretendido relacionar la tabla Socios con la de Videos se podría ver la relación:
1. Un socio puede alquilar muchas películas, por lo tanto un registro de la tabla Socios se relaciona con varios
de la tabla Videos. Se agregaría un campo a la tabla Videos con el código de socio para establecer la
relación.
2. Un mismo video puede ser alquilado por muchos socios, entonces un registro de un video se corresponde
con varios de la tabla Videos. Se agregaría un campo a la tabla Socios con el código de video para
establecer la relación.
Pagina nueva 1

Se trata de la misma relación vista desde dos puntos de vista diferentes, los manejadores de bases de datos no
pueden solucionar este tipo de problemas por medio de relaciones. La solución consiste en cambiar el diseño de
la base de datos agregando una nueva tabla que contenga los campos clave de cada una, en este ejemplo se
agregaría la tabla Préstamos.

Consideraciones importantes sobre relaciones

● Los tipos de los campos relacionados deben ser tipos equivalentes. No pueden establecerse relaciones entre
campos de tipos distintos.
● El campo a relacionar de la tabla principal tiene que ser necesariamente un campo clave.
● Para representar relaciones de varios a varios que se pueden dar en la realidad entre registros de dos tablas,
es necesario establecer la relación usando una nueva tabla que sirva de vínculo entre ambas.
Resumiendo...

Para comenzar a trabajar en el diseño de una base de datos hay que considerar la realidad que se quiere
representar y abstraer sus principales características. Considerar las siguientes preguntas constituye una
buena ayuda para diseñar una base de datos:
● ¿De qué objetos deseamos almacenar información? En este paso se tendrá una primera visión
de las tablas que tendrá la base de datos. Por ejemplo: Deseamos almacenar información sobre
socios de un club de videos, películas, empresas distribuidoras, préstamos efectuados, géneros de
películas.
● ¿Cuáles son las características comunes a un grupo de objetos? Por ejemplo: Los socios tienen
un número identificador, apellido, nombre, dirección, teléfono, documento de identidad, etc. Estos
son los campos de una tabla.
● ¿Qué cualidades debe tener la información de cada objeto? Se considerarán las características
particulares de cada campo. Por ejemplo: Los videos tienen un código con un tamaño de 4
caracteres y un género que se identifica con un número.
● ¿Cómo se relaciona un objeto de un grupo con un objeto de otro grupo? Por ejemplo: Cada
préstamo tiene el número del socio y el código de la película correspondientes, éstos deben ser
códigos válidos (el socio y la película deben existir).
● ¿Qué tipo de información deseamos obtener de los objetos? Por último, una vez definidas las
tablas y sus estructuras, se definirá el resto de las herramientas para manipular los datos. Por
ejemplo: Informes impresos con los videos en préstamo, listados clasificados por género, listados
alfabéticos de clientes, etc.

En general

El concepto... Se representa mediante... Por ejemplo:


Información completa que se
Base de datos Información de un video club.
desea utilizar.
Conjunto de objetos que poseen
Tabla de una base de datos Videos, Socios.
características comunes.
Objeto.
Registro Un video, un socio.

Fecha de devolución de los


Característica de un objeto. Campo
préstamos, dirección del socio.

También podría gustarte