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.