Computación aplicada III

Anuncio
ESCUELA DE CONTABILIDAD Y
AUDITORÍA
CARRERA
CONTABILIDAD Y AUDITORIA
SECCION MATUTINA
-
NIVEL No. II
CURSO - CUARTO
PARALELO -
“C”
ASIGNATURA: COMPUTACION
TEMA: TAREA BASE DE DATOS
PROFESOR: ING. SIST. LUIS LOJAN
ESTUDIANTE:
VERONICA VALENCIA CARRANZA
FECHA INICIO DE ASIGNATURA: 13-OCTUBRE-2011
PERIODO: 2011 – 2012
NORMALIZACIÓN DE UNA BASE DE DATOS
Una base de datos o banco de datos (en ocasiones abreviada con la sigla BD o con la
abreviatura b. d.) es un conjunto de datos pertenecientes a un mismo contexto y
almacenados sistemáticamente para su posterior uso. En este sentido, una biblioteca
puede considerarse una base de datos compuesta en su mayoría por documentos y textos
impresos en papel e indexados para su consulta. Actualmente, y debido al desarrollo
tecnológico de campos como la informática y la electrónica, la mayoría de las bases de
datos están en formato digital (electrónico), que ofrece un amplio rango de soluciones al
problema de almacenar datos.
Las aplicaciones más usuales son para la gestión de empresas e instituciones públicas.
También son ampliamente utilizadas en entornos científicos con el objeto de almacenar
la información experimental.
Aunque las bases de datos pueden contener muchos tipos de datos, algunos de ellos se
encuentran protegidos por las leyes de varios países. Por ejemplo, en España los datos
personales se encuentran protegidos por la Ley Orgánica de Protección de Datos de
Carácter Personal (LOPD
TIPOS DE BASE DE DATOS
Las bases de datos pueden clasificarse de varias maneras, de acuerdo al contexto que se
esté manejando, la utilidad de las mismas o las necesidades que satisfagan.
Según la variabilidad de los datos almacenados
Bases de datos estáticas
Son bases de datos de sólo lectura, utilizadas primordialmente para almacenar datos
históricos que posteriormente se pueden utilizar para estudiar el comportamiento de un
conjunto de datos a través del tiempo, realizar proyecciones, tomar decisiones y realizar
análisis de datos para inteligencia empresarial.
BASES DE DATOS DINÁMICAS
Éstas son bases de datos donde la información almacenada se modifica con el tiempo,
permitiendo operaciones como actualización, borrado y adición de datos, además de las
operaciones fundamentales de consulta. Un ejemplo de esto puede ser la base de datos
utilizada en un sistema de información de un supermercado, una farmacia, un videoclub
o una empresa.
BASES DE DATOS BIBLIOGRÁFICAS
Sólo contienen un subrogante (representante) de la fuente primaria, que permite
localizarla. Un registro típico de una base de datos bibliográfica contiene información
sobre el autor, fecha de publicación, editorial, título, edición, de una determinada
publicación, etc. Puede contener un resumen o extracto de la publicación original, pero
nunca el texto completo, porque si no, estaríamos en presencia de una base de datos a
texto completo (o de fuentes primarias —ver más abajo). Como su nombre lo indica, el
contenido son cifras o números. Por ejemplo, una colección de resultados de análisis de
laboratorio, entre otras.
BASES DE DATOS DE TEXTO COMPLETO
Almacenan las fuentes primarias, como por ejemplo, todo el contenido de todas las
ediciones de una colección de revistas científicas.
Directorios
Un ejemplo son las guías telefónicas en formato electrónico.
Bases de datos o "bibliotecas" de información química o biológica
Son bases de datos que almacenan diferentes tipos de información proveniente de la
química, las ciencias de la vida o médicas. Se pueden considerar en varios subtipos:





Las que almacenan secuencias de nucleótidos o proteínas.
Las bases de datos de rutas metabólicas.
Bases de datos de estructura, comprende los registros de datos experimentales
sobre estructuras 3D de biomoléculasBases de datos clínicas.
Bases de datos bibliográficas (biológicas, químicas, médicas y de otros campos):
PubChem, Medline, EBSCOhost.
MODELOS DE BASES DE DATOS
Además de la clasificación por la función de las bases de datos, éstas también se pueden
clasificar de acuerdo a su modelo de administración de datos.
Un modelo de datos es básicamente una "descripción" de algo conocido como
contenedor de datos (algo en donde se guarda la información), así como de los métodos
para almacenar y recuperar información de esos contenedores. Los modelos de datos no
son cosas físicas: son abstracciones que permiten la implementación de un sistema
eficiente de base de datos; por lo general se refieren a algoritmos, y conceptos
matemáticos.
Algunos modelos con frecuencia utilizados en las bases de datos:
BASE DE DATOS JERÁRQUICA
Éstas son bases de datos que, como su nombre indica, almacenan su información en una
estructura jerárquica. En este modelo los datos se organizan en una forma similar a un
árbol (visto al revés), en donde un nodo padre de información puede tener varios hijos.
El nodo que no tiene padres es llamado raíz, y a los nodos que no tienen hijos se los
conoce como hojas.
Las bases de datos jerárquicas son especialmente útiles en el caso de aplicaciones que
manejan un gran volumen de información y datos muy compartidos permitiendo crear
estructuras estables y de gran rendimiento.
Una de las principales limitaciones de este modelo es su incapacidad de representar
eficientemente la redundancia de datos.
BASE DE DATOS DE RED
Éste es un modelo ligeramente distinto del jerárquico; su diferencia fundamental es la
modificación del concepto de nodo: se permite que un mismo nodo tenga varios padres
(posibilidad no permitida en el modelo jerárquico).
Fue una gran mejora con respecto al modelo jerárquico, ya que ofrecía una solución
eficiente al problema de redundancia de datos; pero, aun así, la dificultad que significa
administrar la información en una base de datos de red ha significado que sea un
modelo utilizado en su mayoría por programadores más que por usuarios finales.
BASES DE DATOS TRANSACCIONALES
Son bases de datos cuyo único fin es el envío y recepción de datos a grandes
velocidades, estas bases son muy poco comunes y están dirigidas por lo general al
entorno de análisis de calidad, datos de producción e industrial, es importante entender
que su fin único es recolectar y recuperar los datos a la mayor velocidad posible, por lo
tanto la redundancia y duplicación de información no es un problema como con las
demás bases de datos, por lo general para poderlas aprovechar al máximo permiten
algún tipo de conectividad a bases de datos relacionales.
Un ejemplo habitual de transacción es el traspaso de una cantidad de dinero entre
cuentas bancarias. Normalmente se realiza mediante dos operaciones distintas, una en la
que se decremento el saldo de la cuenta origen y otra en la que incrementamos el saldo
de la cuenta destino. Para garantizar la atomicidad del sistema (es decir, para que no
aparezca o desaparezca dinero), las dos operaciones deben ser atómicas, es decir, el
sistema debe garantizar que, bajo cualquier circunstancia (incluso una caída del
sistema), el resultado final es que, o bien se han realizado las dos operaciones, o bien no
se ha realizado ninguna.
BASES DE DATOS RELACIONALES
Éste es el modelo utilizado en la actualidad para modelar problemas reales y administrar
datos dinámicamente. Tras ser postulados sus fundamentos en 1970 por Edgar Frank
Codd, de los laboratorios IBM en San José (California), no tardó en consolidarse como
un nuevo paradigma en los modelos de base de datos. Su idea fundamental es el uso de
"relaciones". Estas relaciones podrían considerarse en forma lógica como conjuntos de
datos llamados "tuplas". Pese a que ésta es la teoría de las bases de datos relacionales
creadas por Codd, la mayoría de las veces se conceptualiza de una manera más fácil de
imaginar. Esto es pensando en cada relación como si fuese una tabla que está compuesta
por registros (las filas de una tabla), que representarían las tuplas, y campos (las
columnas de una tabla).
En este modelo, el lugar y la forma en que se almacenen los datos no tienen relevancia
(a diferencia de otros modelos como el jerárquico y el de red). Esto tiene la considerable
ventaja de que es más fácil de entender y de utilizar para un usuario esporádico de la
base de datos. La información puede ser recuperada o almacenada mediante "consultas"
que ofrecen una amplia flexibilidad y poder para administrar la información.
El lenguaje más habitual para construir las consultas a bases de datos relacionales es
SQL, Structured Query Language o Lenguaje Estructurado de Consultas, un estándar
implementado por los principales motores o sistemas de gestión de bases de datos
relacionales.
Durante su diseño, una base de datos relacional pasa por un proceso al que se le conoce
como normalización de una base de datos.
Durante los años 80 la aparición de dBASE produjo una revolución en los lenguajes de
programación y sistemas de administración de datos. Aunque nunca debe olvidarse que
dBase no utilizaba SQL como lenguaje base para su gestión.
BASES DE DATOS MULTIDIMENSIONALES
Son bases de datos ideadas para desarrollar aplicaciones muy concretas, como creación
de Cubos OLAP. Básicamente no se diferencian demasiado de las bases de datos
relacionales (una tabla en una base de datos relacional podría serlo también en una base
de datos multidimensional), la diferencia está más bien a nivel conceptual; en las bases
de datos multidimensionales los campos o atributos de una tabla pueden ser de dos
tipos, o bien representan dimensiones de la tabla, o bien representan métricas que se
desean estudiar.
BASES DE DATOS ORIENTADAS A OBJETOS
Artículo principal: Base de datos orientada a objetos
Este modelo, bastante reciente, y propio de los modelos informáticos orientados a
objetos, trata de almacenar en la base de datos los objetos completos (estado y
comportamiento).
Una base de datos orientada a objetos es una base de datos que incorpora todos los
conceptos importantes del paradigma de objetos:



Encapsulación - Propiedad que permite ocultar la información al resto de los
objetos, impidiendo así accesos incorrectos o conflictos.
Herencia - Propiedad a través de la cual los objetos heredan comportamiento
dentro de una jerarquía de clases.
Polimorfismo - Propiedad de una operación mediante la cual puede ser aplicada
a distintos tipos de objetos.
En bases de datos orientadas a objetos, los usuarios pueden definir operaciones sobre
los datos como parte de la definición de la base de datos. Una operación (llamada
función) se especifica en dos partes. La interfaz (o signatura) de una operación incluye
el nombre de la operación y los tipos de datos de sus argumentos (o parámetros). La
implementación (o método) de la operación se especifica separadamente y puede
modificarse sin afectar la interfaz. Los programas de aplicación de los usuarios pueden
operar sobre los datos invocando a dichas operaciones a través de sus nombres y
argumentos, sea cual sea la forma en la que se han implementado. Esto podría
denominarse independencia entre programas y operaciones.
BASES DE DATOS DOCUMENTALES
Permiten la indexación a texto completo, y en líneas generales realizar búsquedas más
potentes. Tesaurus es un sistema de índices optimizado para este tipo de bases de datos.
BASES DE DATOS DEDUCTIVAS
Un sistema de base de datos deductiva, es un sistema de base de datos pero con la
diferencia de que permite hacer deducciones a través de inferencias. Se basa
principalmente en reglas y hechos que son almacenados en la base de datos. Las bases
de datos deductivas son también llamadas bases de datos lógicas, a raíz de que se basa
en lógica matemática. Este tipo de base de datos surge debido a las limitaciones de la
Base de Datos Relacional de responder a consultas recursivas y de deducir relaciones
indirectas de los datos almacenados en la base de datos.
Ventajas






Uso de reglas lógicas para expresar las consultas.
Permite responder consultas recursivas.
Cuenta con negaciones estratificadas
Capacidad de obtener nueva información a través de la ya almacenada en la base
de datos mediante inferencia.
Uso de algoritmos de optimización de consultas.
Soporta objetos y conjuntos complejos.
Desventajas



Fases
Crear procedimientos eficaces de deducción para evitar caer en bucles infinitos.
Encontrar criterios que decidan la utilización de una ley como regla de
deducción.
Replantear las convenciones habituales de la base de datos.


Fase de Interrogación: se encarga de buscar en la base de datos informaciones
deducibles implícitas. Las reglas de esta fase se denominan reglas de derivación.
Fase de Modificación: se encarga de añadir a la base de datos nuevas
informaciones deducibles. Las reglas de esta fase se denominan reglas de
generación.
Interpretación
Encontramos dos teorías de interpretación de las bases de datos deductivas:

Teoría de Demostración: consideramos las reglas y los hechos como axiomas.
Los hechos son axiomas base que se consideran como verdaderos y no contienen
variables. Las reglas son axiomas deductivos ya que se utilizan para deducir nuevos
hechos.

Teoría de Modelos: una interpretación es llamada modelo cuando para un
conjunto específico de reglas, éstas se cumplen siempre para esa interpretación.
Consiste en asignar a un predicado todas las combinaciones de valores y
argumentos de un dominio de valores constantes dado. A continuación se debe
verificar si ese predicado es verdadero o falso.
Mecanismos
Existen dos mecanismos de inferencia:


Ascendente: donde se parte de los hechos y se obtiene nuevos aplicando reglas
de inferencia.
Descendente: donde se parte del predicado (objetivo de la consulta realizada) e
intenta encontrar similitudes entre las variables que nos lleven a hechos
correctos almacenados en la base de datos.
¿QUÉ SON LAS BASES DE DATOS?
Una base de datos es un “almacén” que nos permite guardar grandes cantidades de
información de forma organizada para que luego podamos encontrar y utilizar
fácilmente. A continuación te presentamos una guía que te explicará el concepto y
características de las bases de datos.
El término de bases de datos fue escuchado por primera vez en 1963, en un simposio
celebrado en California, USA. Una base de datos se puede definir como un conjunto de
información relacionada que se encuentra agrupada ó estructurada.
Desde el punto de vista informático, la base de datos es un sistema formado por un
conjunto de datos almacenados en discos que permiten el acceso directo a ellos y un
conjunto de programas que manipulen ese conjunto de datos.
Cada base de datos se compone de una o más tablas que guarda un conjunto de datos.
Cada tabla tiene una o más columnas y filas. Las columnas guardan una parte de la
información sobre cada elemento que queramos guardar en la tabla, cada fila de la tabla
conforma un registro.
DEFINICIÓN DE BASE DE DATOS
Se define una base de datos como una serie de datos organizados y relacionados entre sí,
los cuales son recolectados y explotados por los sistemas de información de una
empresa o negocio en particular.
Características
Entre las principales características de los sistemas de base de datos podemos
mencionar:








Independencia lógica y física de los datos.
Redundancia mínima.
Acceso concurrente por parte de múltiples usuarios.
Integridad de los datos.
Consultas complejas optimizadas.
Seguridad de acceso y auditoría.
Respaldo y recuperación.
Acceso a través de lenguajes de programación estándar.
Compartición de datos:
En los sistemas de ficheros, los ficheros pertenecen a las personas o a los departamentos
que los utilizan. Pero en los sistemas de bases de datos, la base de datos pertenece a la
empresa y puede ser compartida por todos los usuarios que estén autorizados.
Mantenimiento de estándares:
Gracias a la integración es más fácil respetar los estándares necesarios, tanto los
establecidos a nivel de la empresa como los nacionales e internacionales. Estos
estándares pueden establecerse sobre el formato de los datos para facilitar su
intercambio, pueden ser estándares de documentación, procedimientos de actualización
y también reglas de acceso.
Mejora en la integridad de datos:
La integridad de la base de datos se refiere a la validez y la consistencia de los datos
almacenados. Normalmente, la integridad se expresa mediante restricciones o reglas que
no se pueden violar. Estas restricciones se pueden aplicar tanto a los datos, como a sus
relaciones, y es el SGBD quien se debe encargar de mantenerlas.
Mejora en la seguridad:
La seguridad de la base de datos es la protección de la base de datos frente a usuarios no
autorizados. Sin unas buenas medidas de seguridad, la integración de datos en los
sistemas de bases de datos hace que éstos sean más vulnerables que en los sistemas de
ficheros.
Mejora en la accesibilidad a los datos:
Muchos SGBD proporcionan lenguajes de consultas o generadores de informes que
permiten al usuario hacer cualquier tipo de consulta sobre los datos, sin que sea
necesario que un programador escriba una aplicación que realice tal tarea.
Mejora en la productividad:
El SGBD proporciona muchas de las funciones estándar que el programador necesita
escribir en un sistema de ficheros. A nivel básico, el SGBD proporciona todas las
rutinas de manejo de ficheros típicas de los programas de aplicación.
El hecho de disponer de estas funciones permite al programador centrarse mejor en la
función específica requerida por los usuarios, sin tener que preocuparse de los detalles
de implementación de bajo nivel.
Mejora en el mantenimiento:
En los sistemas de ficheros, las descripciones de los datos se encuentran inmersas en los
programas de aplicación que los manejan.
Esto hace que los programas sean dependientes de los datos, de modo que un cambio en
su estructura, o un cambio en el modo en que se almacena en disco, requiere cambios
importantes en los programas cuyos datos se ven afectados.
Sin embargo, los SGBD separan las descripciones de los datos de las aplicaciones. Esto
es lo que se conoce como independencia de datos, gracias a la cual se simplifica el
mantenimiento de las aplicaciones que acceden a la base de datos.
Aumento de la concurrencia:
En algunos sistemas de ficheros, si hay varios usuarios que pueden acceder
simultáneamente a un mismo fichero, es posible que el acceso interfiera entre ellos de
modo que se pierda información o se pierda la integridad. La mayoría de los SGBD
gestionan el acceso concurrente a la base de datos y garantizan que no ocurran
problemas de este tipo.
Mejora en los servicios de copias de seguridad:
Muchos sistemas de ficheros dejan que sea el usuario quien proporcione las medidas
necesarias para proteger los datos ante fallos en el sistema o en las aplicaciones. Los
usuarios tienen que hacer copias de seguridad cada día, y si se produce algún fallo,
utilizar estas copias para restaurarlos.
En este caso, todo el trabajo realizado sobre los datos desde que se hizo la última copia
de seguridad se pierde y se tiene que volver a realizar. Sin embargo, los SGBD actuales
funcionan de modo que se minimiza la cantidad de trabajo perdido cuando se produce
un fallo.
Desventajas de las bases de datos
Complejidad:
Los SGBD son conjuntos de programas que pueden llegar a ser complejos con una gran
funcionalidad. Es preciso comprender muy bien esta funcionalidad para poder realizar
un buen uso de ellos.
Coste del equipamiento adicional:
Tanto el SGBD, como la propia base de datos, pueden hacer que sea necesario adquirir
más espacio de almacenamiento. Además, para alcanzar las prestaciones deseadas, es
posible que sea necesario adquirir una máquina más grande o una máquina que se
dedique solamente al SGBD. Todo esto hará que la implantación de un sistema de bases
de datos sea más cara.
Vulnerable a los fallos:
El hecho de que todo esté centralizado en el SGBD hace que el sistema sea más
vulnerable ante los fallos que puedan producirse. Es por ello que deben tenerse copias
de seguridad (Backup).
Tipos de Campos
Cada Sistema de Base de Datos posee tipos de campos que pueden ser similares o
diferentes. Entre los más comunes podemos nombrar:






Numérico: entre los diferentes tipos de campos numéricos podemos encontrar
enteros “sin decimales” y reales “decimales”.
Booleanos: poseen dos estados: Verdadero “Si” y Falso “No”.
Memos: son campos alfanuméricos de longitud ilimitada. Presentan el
inconveniente de no poder ser indexados.
Fechas: almacenan fechas facilitando posteriormente su explotación. Almacenar
fechas de esta forma posibilita ordenar los registros por fechas o calcular los días
entre una fecha y otra.
Alfanuméricos: contienen cifras y letras. Presentan una longitud limitada (255
caracteres).
Autoincrementables: son campos numéricos enteros que incrementan en una
unidad su valor para cada registro incorporado. Su utilidad resulta: Servir de
identificador ya que resultan exclusivos de un registro.
Modelo entidad-relación
Los diagramas o modelos entidad-relación (denominado por su siglas, ERD “Diagram
Entity relationship”) son una herramienta para el modelado de datos de un sistema de
información. Estos modelos expresan entidades relevantes para un sistema de
información, sus inter-relaciones y propiedades.
Cardinalidad de las Relaciones
El diseño de relaciones entre las tablas de una base de datos puede ser la siguiente:



Relaciones de uno a uno: una instancia de la entidad A se relaciona con una y
solamente una de la entidad B.
Relaciones de uno a muchos: cada instancia de la entidad A se relaciona con
varias instancias de la entidad B.
Relaciones de muchos a muchos: cualquier instancia de la entidad A se relaciona
con cualquier instancia de la entidad B.
Estructura de una Base de Datos
Una base de datos, a fin de ordenar la información de manera lógica, posee un orden
que debe ser cumplido para acceder a la información de manera coherente. Cada base de
datos contiene una o más tablas, que cumplen la función de contener los campos.
En el siguiente ejemplo mostramos una tabla “comentarios” que contiene 4 campos.
Los datos quedarían organizados como mostramos en siguiente ejemplo:
Por consiguiente una base de datos posee el siguiente orden jerárquico:

Tablas



Campos
Registros
Lenguaje SQL
El lenguaje SQL es el más universal en los sistemas de base de datos. Este lenguaje nos
permite realizar consultas a nuestras bases de datos para mostrar, insertar, actualizar y
borrar datos.
A continuación veremos un ejemplo de ellos:s

Mostrar: para mostrar los registros se utiliza la instrucción Select. Select * From
comentarios.

Insertar: los registros pueden ser introducidos a partir de sentencias que emplean
la instrucción Insert. Insert Into comentarios (titulo, texto, fecha) Values
('saludos', 'como esta', '22-10-2007')

Borrar: Para borrar un registro se utiliza la instrucción Delete. En este caso
debemos especificar cual o cuales son los registros que queremos borrar. Es por
ello necesario establecer una selección que se llevara a cabo mediante la cláusula
Where. Delete From comentarios Where id='1'.

Actualizar: para actualizar los registros se utiliza la instrucción Update. Como
para el caso de Delete, necesitamos especificar por medio de Where cuáles son
los registros en los que queremos hacer efectivas nuestras modificaciones.
Además, tendremos que especificar cuáles son los nuevos valores de los campos
que deseamos actualizar.

Normalización
El proceso de normalización de bases de datos consiste en aplicar una serie de reglas a
las relaciones obtenidas tras el paso del modelo entidad-relación al modelo relacional.
Las bases de datos relacionales se normalizan para:



Evitar la redundancia de los datos.
Evitar problemas de actualización de los datos en las tablas.
Proteger la integridad de los datos.
En el modelo relacional es frecuente llamar tabla a una relación, aunque para que una
tabla sea considerada como una relación tiene que cumplir con algunas restricciones:



Cada tabla debe tener su nombre único.
No puede haber dos filas iguales. No se permiten los duplicados.
Todos los datos en una columna deben ser del mismo tipo.
LA N FORMA NORMAL DE BASE DE DATOS
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 están en la forma
normal N.
En general, las primeras tres formas normales son suficientes para cubrir las
necesidades de la mayoría de las bases de datos. El creador de estas 3 primeras formas
normales (o reglas) fue Edgar F. Codd
NORMALIZACIÓN MÁS ALLÁ DE LA 1NF
Cualquier tabla que esté en la segunda forma normal (2NF) o más arriba, también está,
por definición, en 1NF (cada forma normal tiene criterios más rigurosos que su
precursor). Por una parte, una tabla que está en 1NF puede o no puede estar en 2NF; si
está en 2NF, puede o no puede estar en 3NF, y así sucesivamente.
Las formas normales más arriba que la 1NF son pensadas para ocuparse de las
situaciones en las que una tabla sufre de problemas de diseño que pueden comprometer
la integridad de los datos dentro de ella. Por ejemplo, la tabla siguiente está en 1NF,
pero no está en 2NF y por lo tanto es vulnerable a inconsistencias lógicas:
Dirección de correo del subscriptor
ID
del
Dirección de correo
subscriptor
108
steve@aardvarkmail.net
252
carol@mongoosemail.org
Primer nombre
subscriptor
Steve
Carol
del Apellido
subscriptor
Wallace
Robertson
del
252
360
crobertson@aardvarkmail.net Carol
hclark@antelopemail.com
Harriet
Robertson
Clark
La clave de la tabla es {ID del subscriptor, Dirección de correo}.
Si Carol Robertson cambia su apellido por el de matrimonio, el cambio debe ser
aplicado a dos filas. Si el cambio es aplicado solamente a una fila, resulta en una
contradicción: la pregunta "cuál es nombre del cliente 252?" tiene dos respuestas que
están en conflicto. La 2NF aborda este problema.
Normalización de base de datos: Primera forma normal (1FN)
Normalización de bases de datos.
El proceso de normalización de bases de datos consiste en aplicar una serie de reglas a
las relaciones obtenidas tras el paso del modelo entidad-relación al modelo relacional.
Las bases de datos relacionales se normalizan para:
Evitar la redundancia de los dato
Evitar problemas de actualización de los datos en las tablas.
Proteger la integridad de los datos.
En el modelo relacional es frecuente llamar tabla a una relación, aunque para que una
tabla sea considerada como una relación tiene que cumplir con algunas restricciones:
Cada tabla debe tener su nombre único.
No puede haber dos filas iguales. No se permiten los duplicados.
Todos los datos en una columna deben ser del mismo tipo.
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 están en la forma
normal N.
Diagrama de inclusión de todas las formas normales.
En general, las primeras tres formas normales son suficientes para cubrir las
necesidades de la mayoría de las bases de datos. El creador de estas 3 primeras formas
normales (o reglas) fue Edgar F. Codd.
Primera Forma Normal (1FN)
Una tabla está en Primera Forma Normal si:
Todos los atributos son atómicos. Un atributo es atómico si los elementos del dominio
son
La tabla contiene una clave primaria única.
La clave primaria no contiene atributos nulos.
No debe de existir variación en el número de columnas.
Los Campos no clave deben identificarse por la clave (Dependencia Funcional)
Debe Existir una independencia del orden tanto de las filas como de las columnas, es
decir, si los datos cambian de orden no deben cambiar sus significados
Una tabla no puede tener múltiples valores en cada columna. Los datos son atómicos. (Si
a cada valor de X le pertenece un valor de Y y viceversa)
Esta forma normal elimina los valores repetidos dentro de una BD.
1FN = Significa, Primera Forma Normal o 1NF del inglés First Normal Form.
Las tablas 1FN como representaciones de relaciones
Según la definición de Date de la 1FN, una tabla está en 1FN si y solo si es "isomorfa a
alguna relación", lo que significa, específicamente, que satisface las siguientes cinco
condiciones:
1. No hay orden de arriba-a-abajo en las filas.
2. No hay orden de izquierda-a-derecha en las columnas.
3. No hay filas duplicadas.
4. Cada intersección de fila-y-columna contiene exactamente un valor del dominio
aplicable (y nada más).
5. Todas las columnas son regulares [es decir, las filas no tienen componentes como IDs
de fila, IDs de objeto, o timestamps ocultos].
La violación de cualesquiera de estas condiciones significaría que la tabla no es
estrictamente relacional, y por lo tanto no está en 1FN. Algunos ejemplos de tablas (o
de vistas) que no satisfacen esta definición de 1FN son:



Una tabla que carece de una clave primaria. Esta tabla podría acomodar filas
duplicadas, en violación de la condición 3.
Una vista cuya definición exige que los resultados sean retornados en un orden
particular, de modo que el orden de la fila sea un aspecto intrínseco y
significativo de la vista. Esto viola la condición 1. Las tuplas en relaciones
verdaderas no están ordenadas una con respecto de la otra.
Una tabla con por lo menos un atributo que pueda ser nulo. Un atributo que
pueda ser nulo estaría en violación de la condición 4, que requiere a cada campo
contener exactamente un valor de su dominio de columna. Sin embargo, debe
observarse que este aspecto de la condición 4 es controvertido. Muchos autores
consideran que una tabla está en 1FN si ninguna clave candidata puede contener
valores nulos, pero se aceptan éstos para atributos (campos) que no sean clave,
según el modelo original de Codd sobre el modelo relacional, el cual hizo
disposición explícita para los nulos.
Descargar