Está en la página 1de 26

OBJETIVO GENERAL DEL PROYECTO

Analizar el proceso de compra y venta de productos con el fin de aportar


diversas soluciones que aumenten la eficiencia de la empresa para as facilitar la
forma de trabajo apoyndose de los sistemas informticos.

Objetivos especficos
Facilitar el proceso de compra y venta de productos.
Optimizar el servicio al cliente, reduciendo el tiempo del proceso de
ventas.
Minimizar el margen de error de las ventas al utilizar un sistema de
ventas.
Actualizar la forma de trabajar en la empresa atreves de la
implementacin de programas de puntos de ventas.



SISTEMAS GESTORES DE BASES DE DATOS

Un sistema gestor de bases de datos (SGBD) consiste en una coleccin
de datos interrelacionados y un conjunto de programas para acceder a dichos
datos. La coleccin de datos, normalmente denominada base de datos, contiene
informacin relevante para una empresa.

El objetivo principal de un SGBD es proporcionar una forma de almacenar y
recuperar la informacin de una base de datos de manera que sea tanto prctica
como eficiente. Los sistemas de bases de datos se disean para gestionar
grandes cantidades de informacin.

1.1 Objetivo de las Bases de Datos

El objetivo principal de las bases de datos es el de unificar los datos que se
manejan y los programas o aplicaciones que los manejan. Anteriormente los
programas se codificaban junto con los datos, es decir, se diseaban para la
aplicacin concreta que los iba a manejar, lo que desembocaba en una
dependencia de los programas respecto a los datos, ya que la estructura de los
ficheros va incluida dentro del programa, y cualquier cambio en la estructura del
fichero provocaba modificar y recompilar programas.

Adems, cada aplicacin utiliza ficheros que pueden ser comunes a otras de la
misma organizacin, por lo que se produce una REDUNDANCIA de la
informacin, que provoca mayor ocupacin de memoria, laboriosos programas de
actualizacin (unificar datos recogidos por las aplicaciones de los diferentes
departamentos), e inconsistencia de datos (no son correctos) si los datos no
fueron bien actualizados en todos los programas.

Con las bases de datos, se busca independizar los datos y las aplicaciones, es
decir, mantenerlos en espacios diferentes. Los datos residen en memoria y los
programas mediante un sistema gestor de bases de datos, manipulan la
informacin.

Es una coleccin de datos referentes a una organizacin estructurada segn
un modelo de datos de forma que refleja las relaciones y restricciones existentes
entre los objetos del mundo real, y consigue independencia, integridad y seguridad
de los datos.


1.2 reas de Aplicacin de los Sistemas de Bases de datos

Las bases de datos son ampliamente usadas. Las siguientes son algunas de sus
aplicaciones ms representativas:
Banca. Para informacin de los clientes, cuentas y prstamos, y
transacciones bancarias.
Lneas areas. Para reservas e informacin de planificacin. Las lneas
areas fueron de los primeros en usar las bases de datos de forma
distribuida geogrficamente (los terminales situados en todo el mundo
accedan al sistema de bases de datos centralizado a travs de las lneas
telefnicas y otras redes de datos).
Universidades. Para informacin de los estudiantes, matrculas de las
asignaturas y cursos.
Transacciones de tarjetas de crdito. Para compras con tarjeta de
crdito y generacin mensual de extractos.
Telecomunicaciones. Para guardar un registro de las llamadas
realizadas, generacin mensual de facturas, manteniendo el saldo de las
tarjetas telefnicas de prepago y para almacenar informacin sobre las
redes de comunicaciones.
Finanzas. Para almacenar informacin sobre grandes empresas, ventas y
compras de documentos formales financieros, como bolsa y bonos.
Ventas. Para informacin de clientes, productos y compras.
Produccin. Para la gestin de la cadena de produccin y para el
seguimiento de la produccin de elementos en las factoras, inventarios de
elementos en almacenes y pedidos de elementos.
Recursos humanos. Para informacin sobre los empleados, salarios,
impuestos y beneficios, y para la generacin de las nminas.


1.3 Modelos de datos

Bajo la estructura de la base de datos se encuentra el modelo de datos: una
coleccin de herramientas conceptuales para describir los datos, las elaciones, la
semntica y las restricciones de consistencia. Para ilustrar el concepto de un
modelo de datos, describimos dos modelos de datos en este apartado: el modelo
entidad-relacin y el modelo relacional. Los diferentes modelos de datos que se
han propuesto se clasifican en tres grupos diferentes: modelos lgicos basados en
objetos, modelos lgicos basados en registros y modelos fsicos.

1.3.1. Modelo entidad-relacin

El modelo de datos entidad-relacin (E-R) est basado en una percepcin
del mundo real que consta de una coleccin de objetos bsicos, llamados
entidades, y de relaciones entre estos objetos. Una entidad es una cosa u
objeto en el mundo real que es distinguible de otros objetos.

Las entidades se describen en una base de datos mediante un conjunto de
atributos. Una relacin es una asociacin entre varias entidades. El conjunto de
todas las entidades del mismo tipo, y el conjunto de todas las relaciones del
mismo tipo, se denominan respectivamente conjunto de entidades y conjunto
de relaciones.

La estructura lgica general de una base de datos se puede expresar
grficamente mediante un diagrama ER, que consta de los siguientes
componentes:
Rectngulos, que representan conjuntos de entidades.
Elipses, que representan atributos.
Rombos, que representan relaciones entre conjuntos de entidades.
Lneas, que unen los atributos con los conjuntos de entidades y los
conjuntos de entidades con las relaciones.

1.3.2. Modelo relacional

En el modelo relacional se utiliza un grupo de tablas para representar los
datos y las relaciones entre ellos. Cada tabla est compuesta por varias columnas,
y cada columna tiene un nombre nico. En la Figura 1.3 se presenta un ejemplo
de base de datos relacional consistente en tres tablas: la primera muestra los
clientes de un banco, la segunda, las cuentas, y la tercera, las cuentas que
pertenecen a cada cliente.


El modelo relacional es un ejemplo de un modelo basado en registros. Los
modelos basados en registros se denominan as porque la base de datos se
estructura en registros de formato fijo de varios tipos. Cada tabla contiene
registros de un tipo particular. Cada tipo de registro define un nmero fijo de
campos, o atributos. Las columnas de la tabla corresponden a los atributos del tipo
de registro.

El modelo relacional oculta tales detalles de implementacin de bajo nivel a los
desarrolladores de bases de datos y usuarios. El modelo de datos relacional es el
modelo de datos ms ampliamente usado, y una amplia mayora de sistemas de
bases de datos actuales se basan en el modelo relacional.

1.4 Arquitectura del Sistema Gestor de Bases de Datos

La mayora de usuarios de un sistema de bases de datos no estn situados
actualmente junto al sistema de bases de datos, sino que se conectan a l a
travs de una red. Se puede diferenciar entonces entre las mquinas cliente, en
donde trabajan los usuarios remotos de la base de datos, y las mquinas servidor,
en las que se ejecuta el sistema de bases de datos.

Las aplicaciones de bases de datos se dividen usualmente en dos o tres partes:

En una arquitectura de dos capas, la aplicacin se divide en un
componente que reside en la mquina-cliente, que llama a la funcionalidad
del sistema de bases de datos en la mquina servidor mediante
instrucciones del lenguaje de consultas. Los estndares de interfaces de
programas de aplicacin como ODBC y JDBC se usan para la interaccin
entre el cliente y el servidor.

En una arquitectura de tres capas, la mquina cliente acta simplemente
como frontal y no contiene ninguna llamada directa a la base de datos. En
su lugar, el cliente se comunica con un servidor de aplicaciones,
Usualmente mediante una interfaz de formularios. El servidor de
aplicaciones, a su vez, se comunica con el sistema de bases de datos para
acceder a los datos.

La lgica de negocio de la aplicacin, que establece las acciones a
realizar bajo determinadas condiciones, se incorpora en el servidor de
aplicaciones, en lugar de ser distribuida a mltiples clientes. Las
aplicaciones de tres capas son ms apropiadas para grandes aplicaciones,
y para las aplicaciones que se ejecutan en World Wide Web.


1.5 Niveles de abstraccin

Un sistema de bases de datos es una coleccin de archivos
interrelacionados y un conjunto de programas que permitan a los usuarios acceder
y modificar estos archivos. Uno de los propsitos principales de un sistema de
bases de datos es proporcionar a los usuarios una visin abstracta de los datos.
Es decir, el sistema esconde ciertos detalles de cmo se almacenan y mantienen
los datos.




1.5.1. Abstraccin de datos

Para que el sistema sea til debe recuperar los datos eficientemente. Esta
preocupacin ha conducido al diseo de estructuras de datos complejas para la
representacin de los datos en la base de datos. Como muchos usuarios de
sistemas de bases de datos no estn familiarizados con computadores, los
desarrolladores esconden la complejidad a los usuarios a travs de varios niveles
de abstraccin para simplificar la interaccin de los usuarios con el sistema:

Nivel fsico: El nivel ms bajo de abstraccin describe cmo se almacenan
realmente los datos. En el nivel fsico se describen en detalle las estructuras de
datos complejas de bajo nivel.

Nivel lgico: El siguiente nivel ms alto de abstraccin describe qu datos
se almacenan en la base de datos y qu relaciones existen entre esos datos. La
base de datos completa se describe as en trminos de un nmero pequeo de
estructuras relativamente simples. Aunque la implementacin de estructuras
simples en el nivel lgico puede involucrar estructuras complejas del nivel fsico,
los usuarios del nivel lgico no necesitan preocuparse de esta complejidad. Los
administradores de bases de datos, que deben decidir la informacin que se
mantiene en la base de datos, usan el nivel lgico de abstraccin.

Nivel de vistas: El nivel ms alto de abstraccin describe slo parte de la
base de datos completa. A pesar del uso de estructuras ms simples en el nivel
lgico, queda algo de complejidad, debido a la variedad de informacin
almacenada en una gran base de datos. Muchos usuarios del sistema de base de
datos no necesitan toda esta informacin.

En su lugar, tales usuarios necesitan acceder slo a una parte de la base de
datos. Para que su interaccin con el sistema se simplifique, se define la
abstraccin del nivel de vistas. El sistema puede proporcionar muchas vistas para
la misma base de datos.


1.6 Tipos de usuarios

Un objetivo principal de un sistema de bases de datos es recuperar
informacin y almacenar nueva informacin en la base de datos. Las personas
que trabajan con una base de datos se pueden catalogar como usuarios de bases
de datos o como administradores de bases de datos.

1.6.1. Usuarios de bases de datos e interfaces de usuario

Hay cuatro tipos diferentes de usuarios de un sistema de base de datos,
diferenciados por la forma en que ellos esperan interactuar con el sistema. Se han
diseado diferentes tipos de interfaces de usuario para diferentes tipos de
usuarios.

Usuarios normales. Son usuarios no sofisticados que interactan con el
sistema mediante la invocacin de alguno de los programas de aplicacin
permanentes que se ha escrito previamente.

Programadores de aplicaciones. Son profesionales informticos que
escriben programas de aplicacin. Los programadores de aplicaciones
pueden elegir entre muchas herramientas para desarrollar interfaces de
usuario. Las herramientas de desarrollo rpido de aplicaciones (DRA) son
herramientas que permiten al programador de aplicaciones construir
formularios e informes sin escribir un programa.

Los usuarios sofisticados interactan con el sistema sin programas
escritos. En su lugar, ellos forman sus consultas en un lenguaje de consulta
de bases de datos. Cada una de estas consultas se enva al procesador de
consultas, cuya funcin es transformar instrucciones LMD a instrucciones
que el gestor de almacenamiento entienda.

Usuarios especializados. Son usuarios sofisticados que escriben
aplicaciones de bases de datos especializadas que no son adecuadas en el
marco de procesamiento de datos tradicional. Entre estas aplicaciones
estn los sistemas de diseo asistido por computador, sistemas de bases
de conocimientos y sistemas expertos, sistemas que almacenan los datos
con tipos de datos complejos (por ejemplo, datos grficos y datos de audio)
y sistemas de modelado del entorno.


1.7 Tipos de lenguajes

Un sistema de bases de datos proporciona un lenguaje de definicin de
datos para especificar el esquema de la base de datos y un lenguaje de
manipulacin de datos para expresar las consultas a la base de datos y las
modificaciones. En la prctica, los lenguajes de definicin y manipulacin de datos
no son dos lenguajes separados; en su lugar simplemente forman partes de un
nico lenguaje de bases de datos, tal como SQL, ampliamente usado.

1.7.1. Lenguaje de definicin de datos

Un esquema de base de datos se especifica mediante un conjunto de
definiciones expresadas mediante un lenguaje especial llamado lenguaje de
definicin de datos (LDD). Por ejemplo, la siguiente instruccin en el lenguaje SQL
define la tabla cuenta:

create table cuenta
(nmero-cuenta char(10),
saldo integer)

La ejecucin de la instruccin LDD anterior crea la tabla cuenta. Adems,
actualiza un conjunto especial de tablas denominado diccionario de datos o
directorio de datos. Un diccionario de datos contiene metadatos, es decir, datos
acerca de los datos. El esquema de una tabla es un ejemplo de metadatos. Un
sistema de base de datos consulta el diccionario de datos antes de leer o
modificar los datos reales.

Especificamos el almacenamiento y los mtodos de acceso usados por el
sistema de bases de datos por un conjunto de instrucciones en un tipo especial de
LDD denominado lenguaje de almacenamiento y definicin de datos. Estas
instrucciones definen los detalles de implementacin de los esquemas de base de
datos, que se ocultan usualmente a los usuarios.

Los valores de datos almacenados en la base de datos deben satisfacer
ciertas restricciones de consistencia. Los sistemas de bases de datos
comprueban estas restricciones cada vez que se actualiza la base de datos.

1.7.2. Lenguaje de manipulacin de datos

La manipulacin de datos es:
La recuperacin de informacin almacenada en la base de datos.
La insercin de informacin nueva en la base de datos.
El borrado de informacin de la base de datos.
La modificacin de informacin almacenada en la base de datos.

Un lenguaje de manipulacin de datos (LMD) es un lenguaje que permite a
los usuarios acceder o manipular los datos organizados mediante el modelo de
datos apropiado.
Hay dos tipos bsicamente:
LMDs procedimentales. Requieren que el usuario especifique qu datos
se necesitan y cmo obtener esos datos.
LMDs declarativos (tambin conocidos como LMDs no
procedimentales). Requieren que el usuario especifique qu datos se
necesitan sin especificar
cmo obtener esos datos.

Los LMDs declarativos son ms fciles de aprender y usar que los LMDs
procedimentales. Sin embargo, como el usuario no especifica cmo conseguir los
datos, el sistema de bases de datos tiene que determinar un medio eficiente de
acceder a los datos.

Una consulta es una instruccin de solicitud para recuperar informacin. La
parte de un LMD que implica recuperacin de informacin se llama lenguaje de
consultas. Aunque tcnicamente sea incorrecto, en la prctica se usan los
trminos lenguaje de consultas y lenguaje de manipulacin de datos como
sinnimos.

Diseo de Bases de Datos y el modelo E-R

Por lo general, el trmino aplicacin de base de datos se refiere a una base
de datos concreta y a los programas asociados encargados de implementar las
consultas y las actualizaciones de la base de datos. Por ejemplo, una aplicacin
de base de datos BANCO que realiza el seguimiento de las cuentas de los clientes
debe incluir programas encargados de implementar las actualizaciones de la base
de datos correspondientes a los depsitos y las retiradas de fondos de los clientes.

2.1 El Proceso de Diseo

El primer paso es la recopilacin de requisitos y el anlisis. Durante este
paso, los diseadores de bases de datos entrevistan a los potenciales usuarios de
la base de datos para comprender y documentar sus requisitos en cuanto a datos.
Una vez recopilados y analizados todos los requisitos, el siguiente paso es crear
un esquema conceptual para la base de datos, mediante un modelo de datos
conceptual de alto nivel. Este paso se denomina diseo conceptual.

El esquema conceptual es una descripcin concisa de los requisitos de
datos por parte de los usuarios e incluye descripciones detalladas de los tipos de
entidades, relaciones y restricciones; se expresan utilizando los conceptos
proporcionados por el modelo de datos de alto nivel.

El esquema conceptual de alto nivel tambin se puede utilizar como
referencia para garantizar que se han reunido todos los requisitos de datos de los
usuarios y que esos requisitos no entran en conflicto. Esta metodologa permite a
los diseadores de bases de datos concentrarse en especificar las propiedades de
los datos, sin tener que preocuparse por los detalles del almacenamiento. El
siguiente paso del diseo de una base de datos es la implementacin real de la
misma mediante un DBMS comercial.
La mayora de los DBMSs comerciales actuales utilizan un modelo de datos
de implementacin (como el modelo de base de datos relacional u objeto-
relacin), de modo que el esquema conceptual se transforma de modelo de datos
de alto nivel en modelo de datos de implementacin.

2.2 Modelo Entidad-Relacin

El modelo de datos entidad-relacin (E-R) est basado en una percepcin
del mundo real que consta de una coleccin de objetos bsicos, llamados
entidades, y de relaciones entre estos objetos. Una entidad es una cosa u
objeto en el mundo real que es distinguible de otros objetos. Por ejemplo, cada
persona es una entidad, y las cuentas bancarias pueden ser consideradas
entidades.

Las entidades se describen en una base de datos mediante un conjunto de
atributos. Por ejemplo, los atributos nmero-cuenta y saldo describen una cuenta
particular de un banco y pueden ser atributos del conjunto de entidades cuenta.
Anlogamente, los atributos nombre-cliente, calle-cliente y ciudad-cliente pueden
describir una entidad cliente.

2.3 Restricciones

Un esquema de desarrollo E-R puede definir ciertas restricciones a las que
los contenidos de la base de datos se deben adaptar. En este apartado se
examina la correspondencia de cardinalidades y las restricciones de participacin,
que son dos de los tipos ms importantes de restricciones.

2.4 Diagramas E-R

Los diagramas son simples y claros, cualidades que pueden ser
responsables del amplio uso del modelo E-R. Tal diagrama consta de los
siguientes componentes principales:
Rectngulos, que representan conjuntos de entidades.
Elipses, que representan atributos.
Rombos, que representan relaciones.
Lneas, que unen atributos a conjuntos de entidades y conjuntos de
entidades a conjuntos de relaciones.
Elipses dobles, que representan atributos multivalorados.
Elipses discontinuas, que denotan atributos derivados.
Lneas dobles, que indican participacin total de una entidad en un
conjunto de relaciones.
Rectngulos dobles, que representan conjuntos de entidades dbiles

2.5 Diseo con diagramas E-R

El modelo de datos E-R da una flexibilidad sustancial en el diseo de un
esquema de bases de datos para modelar una empresa dada. En este apartado
se considera cmo un diseador de bases de datos puede seleccionar entre el
amplio rango de alternativas. Entre las decisiones que se toman estn las
siguientes:

Si se usa un atributo o un conjunto de entidades para representa un objeto.
Si un concepto del mundo real se expresa ms exactamente mediante un
conjunto de entidades o mediante un conjunto de relaciones.
Si se usa una relacin ternaria o un par de relaciones binaras.
Si se usa un conjunto de entidades fuertes o dbiles; un conjunto de
entidades fuertes y sus conjuntos de entidades dbiles dependientes se
pueden considerar como un objeto en la base de datos, debido a que la
existencia de las entidades dbiles depende de la entidad fuerte.
Si el uso de la generalizacin es apropiado; la generalizacin, o una
jerarqua de relaciones ES, contribuye a la modularidad por permitir que los
atributos comunes de conjuntos de entidades similares se representen en
un nico lugar en un diagrama E-R.
Si el uso de la agregacin es apropiado; la agregacin agrupa una parte de
un diagrama.

2.6 Conjunto de entidades dbiles

Un conjunto de entidades puede no tener suficientes atributos para formar
una clave primaria. Tal conjunto de entidades se denomina conjunto de entidades
dbiles. Un conjunto de entidades que tiene una clave primaria se denomina
conjunto de entidades fuertes. Como ilustracin, considrese el conjunto de
entidades pago, que tiene los tres atributos: nmero-pago, fecha-pago e importe-
pago.

Los nmeros de pago son generalmente nmeros secuenciales,
empezando por 1, generados por separado por cada prstamo. As, aunque cada
entidad pago es distinta, los pagos para diferentes prstamos pueden compartir el
mismo nmero de pago. As, este conjunto de entidades no tiene una clave
primaria; es un conjunto de entidades dbiles.

2.7 Modelo E-R extendido

Aunque los conceptos bsicos de E-R pueden modelar la mayora de las
caractersticas de las bases de datos, algunos aspectos de una base de datos
pueden ser ms adecuadamente expresados mediante ciertas extensiones del
modelo E-R bsico. En este apartado se discuten las caractersticas E-R
extendidas de especializacin, generalizacin, conjuntos de entidades de nivel
ms alto y ms bajo, herencia de atributos y agregacin.

2.8 Otros aspectos del diseo de bases de datos

Un modelo de datos de alto nivel sirve al diseador de la base de datos
para proporcionar un marco conceptual en el que especificar de forma sistemtica
los requisitos de datos de los usuarios de la base de datos que existen, y cmo se
estructurar la base de datos para completar estos requisitos. La fase inicial del
diseo de bases de datos, por tanto, es caracterizar completamente las
necesidades de datos esperadas por los usuarios de la base de datos. El
resultado de esta fase es una especificacin de requisitos del usuario.

El proceso de trasladar un modelo abstracto de datos a la implementacin
de la base de datos consta de dos fases de diseo finales. En la fase de diseo
lgico, el diseador traduce el esquema conceptual de alto nivel al modelo de
datos de la implementacin del sistema de base de datos que se usar.

2.9 La Notacin E-R con UML

Antes de comenzar la estructura de una base de datos describe las
funcionalidades de que la informacin se prev ejecutar. Estas deben ser las
acciones reales que programa para automatizar a travs de la base de datos, al
igual que las preferencias del viajero y listas de correo, el tiempo etc. tomada
cuidadosamente identificar las esperadas se otorgar la utilizacin de la base de
datos varias veces en el futuro.

Una vez que ha decidido la utilizacin de las bases de datos, cuestin que
los componentes de datos necesarios para equipar la informacin necesaria. Por
lo tanto, pensar en el fin de buscar informacin y lo que te preguntas desea
responder. Diversas bases de datos hacen uso de signos de truncamiento
diferentes. Siempre puede utilizar pantalla de ayuda en la base de datos para
buscar smbolo de truncamiento que sirve de base de datos.



Modelo Relacional

Una base de datos relacional consiste en un conjunto de tablas, a cada una
de las cuales se le asigna un nombre exclusivo. Cada fila de la tabla representa
una relacin entre un conjunto de valores.

El modelo de datos relacional organiza y representa los datos en forma de
tablas o relaciones: Por lo tanto, una base de datos relacional es una coleccin de
relaciones [tablas].

Una tabla o relacin es una matriz rectangular que almacena lneas con
una estructura concreta:
La primera lnea de una tabla, es una cabecera que indica el nombre
de cada columna
Cada lnea (excepto la primera) recibe el nombre de Tupla.
Todas las filas deben ser diferentes entre s.
El orden de las filas y de las columnas carece de importancia a
efectos del S.G.B.D.

Como en una tabla, las tuplas pueden estar en cualquier orden, no
podemos referenciar una tupla concreta mediante su posicin entre las dems, y
necesitamos alguna forma de seleccionar una tupla concreta. La forma de hacerlo
es mediante una clave.
Una clave es un atributo o conjunto de atributos cuyo valor es nico y
diferente para cada tupla.

Representacin Lgica Representacin Fsica Modelo Relacional
Tabla Archivo Secuencial Relacin
Fila Registro Tupla
Columna Campo Atributo

Atributo (

): Elemento susceptible de tomar valores (cada una de las


columnas de la tabla).
Dominio (Di): Conjunto de valores que puede tomar un atributo (se
considera finito).
Tupla: Cada uno de los elementos que contiene una instancia de la
relacin (filas).

Esquema de las bases de datos

Una base de datos relacional es un conjunto finito de relaciones junto con
una serie de restricciones o reglas de integridad:

Restriccin de integridad: Condicin necesaria para preservar la
correccin semntica de la base de datos.

Esquema de la base de datos: Coleccin de esquemas de relaciones
junto con las restricciones de integridad que se definen sobre las relaciones.

Instancia de la base de datos

Instancia (o estado) de la base de datos: Coleccin de instancias de
relaciones que verifican las restricciones de integridad.

Base de datos relacional: Instancia de la base de datos junto con su
esquema.

Restricciones de integridad Asociadas a las relaciones de la base
de datos:

Clave primaria: Conjunto de atributos seleccionados para identificar Bases
de datos relacionales unvocamente a las tuplas de una relacin.

Integridad de entidad: Los atributos de la clave primaria no pueden tomar
valores nulos, ya que la clave primaria debe permitirnos identificar unvocamente
cada tupla de la relacin.

Clave externa: Conjunto de atributos de una relacin cuyos valores en las
tuplas deben coincidir con valores de la clave primaria de las tuplas de otra
relacin.

Integridad referencial: Todos los valores no nulos de una clave externa
referencian valores reales de la clave referenciada.
Diseo de Bases de Datos Relacionales

El diseo de una base de datos relacional consiste bsicamente en generar un
conjunto de esquemas de relaciones que permitan almacenar la informacin con
un mnimo de redundancia, pero que a la vez facilite la recuperacin de la
informacin almacenada en ella.

Caractersticas del diseo relacional
El modelo relacional para la gestin de una base de datos es un modelo de
datos basado en la lgica de predicados y en la teora de conjuntos. En este
modelo todos los datos son almacenados en relaciones, adems es ms fcil de
entender y de utilizar por un usuario no experto. La informacin puede ser
recuperada o almacenada por medio de consultas que ofrecen una amplia
flexibilidad y poder para administrar la informacin.

Esquema: Un esquema es la definicin de una estructura (generalmente
relaciones o tablas de una base de datos), es decir, determina la identidad de la
relacin y que tipo de informacin podr ser almacenada dentro de ella.

Instancias: Una instancia de manera formal es la aplicacin de un
esquema a un conjunto finito de datos. En palabras no tan tcnicas, se puede
definir como el contenido de una tabla en un momento dado, pero tambin es
vlido referirnos a una instancia cuando trabajamos o mostramos nicamente un
subconjunto de la informacin contenida en una relacin o tabla.

Dominios atmicos y la forma normal.

Dominio Atmico. El dominio se refiere a todos los valores que se
desprenden de un atributo o que son legales o permitidos en la base de datos, y
atmico significa indivisible, es decir, cada atributo debe contener un nico valor
del dominio.

Adems, cada valor debe tener un nombre nico, ya que la creacin de
tablas implica la definicin de columnas de un tipo concreto y con un nombre
nico. Tampoco pueden existir tuplas idnticas.

Formas Normales

Las formas normales son aplicadas a las tablas de una base de datos. Decir
que una base de datos est en la forma normal N es decir que todas sus tablas
estn en la forma normal N. En general, las primeras tres formas normales son
suficientes para cubrir las necesidades de las bases de datos.

Primera Forma Normal (1FN)

Aplicar la primera forma normal es muy simple, bastar con dividir cada columna
no atmica en tantas columnas atmicas como sea necesario.

Una tabla est en primera forma normal si:
Todos los atributos son atmicos.
La tabla contiene una clave primaria
La clave primaria no contiene atributos nulos.
No existe variacin en el nmero de columnas.
Los campos no clave deben de identificarse por la clave principal
(Dependencia Funcional).
Una tupla no puede tener mltiples valores de cada columna.
Esta forma normal elimina los valores repetidos dentro de una BD.

Por lo general la mayora de las relaciones cumplen con estas caractersticas,
as que podemos decir que la mayora de las relaciones se encuentran en la
primera forma normal.

Dependencias funcionales.

Una dependencia funcional es una relacin entre atributos de una misma
relacin (tupla). Es decir, si X e Y son atributos de la relacin R, se dice que Y es
funcionalmente dependiente de X (se denota por XY) si cada valor de X tiene
asociado un solo valor de Y (X e Y pueden constar de uno o varios atributos).
Cada dependencia funcional es una clase especial de regla de integridad y
representa una relacin de uno a muchos.

Segunda forma normal (2fn).

Para definir formalmente la segunda forma normal requerimos saber que es
una dependencia funcional: Consiste en edificar que atributos dependen de otro(s)
atributo(s).

Definicin formal: Una relacin R est en 2FN si y solo si est en 1FN y los
atributos no primos dependen funcionalmente de la llave primaria. Una relacin se
encuentra en segunda forma normal, cuando cumple con las reglas de la primera
forma normal y todos sus atributos que no son claves (llaves) dependen por
completo de la clave.

De acuerdo con esta definicin, cada tabla que tiene un atributo nico como
clave, est en segunda forma normal.

Tercera forma normal (3fn).

Para definir formalmente la 3FN necesitamos definir dependencia transitiva:
En una afinidad (tabla bidimensional) que tiene por lo menos 3 atributos (A, B, C)
en donde A determina a B, B determina a C pero no determina a A.

Definicin formal: Una relacin R est en 3FN si y solo si est en 2FN y
todos sus atributos no primos dependen no transitivamente de la llave primaria.

Consiste en eliminar la dependencia transitiva que queda en una segunda
forma normal, en pocas palabras una relacin est en tercera forma normal si est
en segunda forma normal y no existen dependencias transitivas entre los atributos,
nos referimos a dependencias transitivas cuando existe ms de una forma de
llegar a referencias a un atributo de una relacin.




Forma normal boyce-cod.
Determinante: Uno o ms atributos que, de manera funcional, determinan
otro atributo o atributos.

Definicin formal: Una relacin R est en FNBC si y solo si cada
determinante es una llave candidato.

Denominada por sus siglas en ingls como BCNF; Una tabla se considera
en esta forma si y slo s cada determinante o atributo es una llave candidato.

Algoritmos de descomposicin.

Algoritmo de descomposicin 3FN tambin se denomina algoritmo de
sntesis de 3FN, ya que toma un conjunto de dependencias y aade los esquemas
uno a uno, en lugar de descomponer el esquema inicial de manera repetida.

Formas normales superiores.

Cuarta forma normal

Una tabla est en 4NF si y solo si est en Tercera forma normal o en BCNF
(Cualquiera de ambas) y no posee dependencias multivaluadas. Una tabla con
una dependencia multivaluada es una donde la existencia de dos o ms relaciones
independientes muchos a muchos causa redundancia; y es esta redundancia la
que es suprimida por la cuarta forma normal.

Quinta forma normal
La quinta forma normal (5FN), tambin conocida como forma normal de
proyeccin-unin (PJ/NF), es un nivel de normalizacin de bases de datos
designado para reducir redundancia en las bases de datos relacionales que
guardan hechos multi-valores aislando semnticamente relaciones mltiples
relacionadas.

La quinta forma normal se refiere a dependencias que son extraas. Tiene
que ver con tablas que pueden dividirse en subtablas, pero que no pueden
reconstruirse.

Integridad de la base de datos.

Integridad de datos en bases de datos: Integridad de datos se refiere al
estado de correccin y completitud de los datos ingresados en una base de datos.

Los SGBD relacionales deben ser capaces de mantener la integridad de los
datos almacenados en una base de datos con respecto a las reglas predefinidas o
restricciones que el administrador y creador de la base de datos determine.

Un claro ejemplo de error de integridad es el ingreso de un tipo de dato
incorrecto dentro de un campo. Por ejemplo, ingresar un texto cuando se espera
un nmero entero. Tambin un error en la integridad de una base de datos puede
ser la existencia de un valor numrico (ID_Cliente) en la compra de un producto
por parte de un cliente que no existe en su correspondiente tabla con ese nmero.
(Integridad referencial).

La exigencia de integridad de los datos garantiza la calidad de los datos de
la base de datos. Por ejemplo, si se especifica para un empleado el valor de
identificador de 123, la base de datos no debe permitir que ningn otro empleado
tenga el mismo valor de identificador. Si tiene una columna employee_rating para
la que se prevean valores entre 1 y 5, la base de datos no debe aceptar valores
fuera de ese intervalo.

Dos pasos importantes en el diseo de las tablas son la identificacin de
valores vlidos para una columna y la determinacin de cmo forzar la integridad
de los datos en la columna.

También podría gustarte