Es un conjunto de reglas que sirven para ayudar a
los diseñadores a desarrollar un esquema que
minimice los problemas de lógica.
Cada regla está basada en la que le antecede. La
normalización se adoptó porque el viejo estilo de
poner todos los datos en un solo lugar, como un
archivo o una tabla de la base de datos, era
ineficiente y conducía a errores de lógica cuando se trataba de manipular los datos.
GRADOS DE NORMALIZACIÓN
*Existen tres niveles básicos de normalización:
Primera Forma Normal (1NF)
Segunda Forma Normal (2NF) y
Tercera Forma Normal (3NF)
Existen cuatro niveles más de normalización:
* Forma Normal Boyce-Codd (BCNF)
* Cuarta Forma Normal (4NF)
* Quinta Forma Normal (5NF) o Forma Normal de
Proyección-Unión (PJNF)
* Forma Normal de Proyección-Unión Fuerte * Forma Normal de Proyección-Unión Extra Fuerte
* Forma Normal de Dominio/Clave. (DKNF)
1NF. EJEMPLO 1: DOMINIOS Y
VALORES
Suponga que un diseñador principiante desea guardar
los nombres y teléfonos de sus clientes.
El diseñador se da cuenta de un requisito para guardar
múltiples números telefónicos para algunos clientes.
Razona que la manera más simple de hacer esto es
permitir que el campo "Teléfono" contenga más de un valor en cualquier registro dado:
Asumiendo, sin embargo, que la columna
"Teléfono" está definida en algún tipo de dominio
de número telefónico (por ejemplo, el dominio de
cadenas de 12 caracteres de longitud), la
representación de arriba no está en 1NF.
La 1NF prohíbe a un campo contener más de un
valor de su dominio de columna.
* Un alternativa en 2NF a este diseño
representaría la misma información en dos
tablas:
Un ejemplo de una tabla 2NF que falla en
satisfacer los requerimientos de la 3NF es:
EN el siguiente vídeo se explica como hacer estaos tres pasos
Parte 2
Referencias Bibliográficas:
Coronel C., Morris S., Rob P. (2011). Bases de Datos Diseño, implementación y administración (Novena edición). México: Cengage Learning Editores. (Libro digital).
Creación de bases
de datos y archivos
de base de datos
Creación de bases de datos
SQL Microsoft es un sistema de manejo de bases de datos delmodelo relacional, desarrollado por la empresa Microsoft.
El lenguaje de desarrollo utilizado (por línea de comandos o mediante la interfaz gráfica de managment studio) es Transact-SQL(TSQL), una implementación del estándar ANSI del lenguaje SQL, utilizado para manipular y recuperar datos (DML), crear tablas y definir relaciones entre ellas (DDL).
Propósito del almacenamiento de datos
Rendimiento de transacciones
Crecimiento potencial del almacenamiento físico
de datos
Ubicación de los archivos
Registro de transacciones
Qué son los grupos de archivos
Todas las bases de datos de SQL Server tienen dos archivos del sistema operativo: un archivo de datos y un archivo de registro.Los archivos de datos contienen datos y otros objetos, como tablas, índices, procedimientos almacenados y vistas.Los archivos de registro contienen la información necesaria para recuperar todas las transacciones de la base de datos.Los archivos de datos se pueden agrupar en grupos de archivos para su asignación y administración.
Cuándo crear grupos de archivos
Qué son los esquemas
Espacios de nombres para los objetos de base de datos.
Módulo 2:
Creación de tipos
de datos y tablas
Qué son los tipos de datos de alias
Se basan en los tipos suministrados por el sistema
Se usan para elementos de datos comunes con un
formato específico
Se crean con la instrucción CREATE TYPE
Consideraciones para la creación de tablas
Intercalación de columnas
Capacidad de aceptar valores NULL de columnas
Tipos de columna especiales.
Columnas calculadas
Columnas de identidad
Columnas timestamp
Columnas uniqueidentifier
Módulo 3:
Implementación de
integridad de datos
La integridad de 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 ningún otro empleado tenga el mismo valor de identificador. Si tiene una columna employee_rating para la que se prevean valores entre 1 y5, la base de datos no debe aceptar valores fuera de ese intervalo. Si en la tabla hay una columna dept_id en la que se almacena el número de departamento del empleado, la base de datos sólo debe permitir valores que correspondan a los números de departamento de la empresa.
Implementación de restricciones
Restricciones PRIMARY KEY
Una restricción PRIMARY KEY identifica una o más
columnas de una tabla que constituyen una clave principal
Se permite una restricción PRIMARY KEY por tabla
El valor debe ser único en las columnas constituyentes
No se permiten valores nulos en las columnas
constituyentes.
Restricciones DEFAULT
Una restricción DEFAULT define un valor de columna
predeterminado cuando no se proporciona ningún valor
Cada columna sólo puede tener una restricción DEFAULT
Sólo es aplicable a instrucciones INSERT
Se permiten algunas funciones suministradas por el sistema.
Restricciones CHECK
Las restricciones CHECK restringen los valores que se
pueden introducir en una columna con INSERT o con UPDATE
Puede definir varias restricciones CHECK por columna
Puede hacer referencia a columnas de la misma tabla
No puede contener subconsultas.
Restricciones UNIQUE
Las restricciones UNIQUE aseguran que todos los valores
de una columna son únicos
Sólo se permite un valor nulo en una columna única
Pueden incluir una o más columnas.
Restricciones FOREIGN KEY
Las restricciones FOREIGN KEY garantizan integridad
referencial entre columnas de la misma tabla o
de tablas diferentes
Deben hacer referencia a una restricción PRIMARY KEY
o UNIQUE
El usuario debe tener permiso REFERENCES en la tabla
a la que se hace referencia
Consideraciones sobre la comprobación de restricciones
Asignar nombres significativos a las restricciones
Crear, cambiar y eliminar restricciones sin necesidad
de eliminar y volver a crear la tabla
Realizar comprobación de errores en las aplicaciones
y las transacciones
Deshabilitar las restricciones CHECK y FOREIGN KEY: Para mejorar el rendimiento al ejecutar trabajos
por lotes grandes.Para evitar comprobar los datos existentes al agregar
nuevas restricciones a una tabla.
Módulo 4:
Implementación de vistas
Qué es una vista: Las vistas (“views”) en SQL son un mecanismo que permite generar un resultado a partir de un pedido (query) almacenado, y ejecutar nuevos pedidos sobre este resultado como si fuera una tabla normal.
A continuación es un vídeo como crearlas
Tipos de vistas
Vistas estándar
Combinan datos de una o más tablas base (o vistas)
en una nueva tabla virtual
Vistas indizadas
Materializan (almacenan) la vista mediante la creación
de un índice único agrupado en la vista.
Vistas con particiones
Combinan datos con particiones horizontales de una
o más tablas base en uno o varios servidores.
Módulo 5:
Implementación
de procedimientos
almacenados y funciones
Qué es un procedimiento almacenado
Una colección con nombre de instrucciones
Transact-SQL o código de Microsoft .NET Framework
Acepta parámetros de entrada y devuelve valores
de parámetros de salida
Devuelve un valor de estado para indicar el éxito
o el error.
Crear en la base de datos actual utilizando la instrucción
CREATE PROCEDURE
Usar EXECUTE para ejecutar procedimiento almacenado
Referencias Bibliográficas:
Coronel C., Morris S., Rob P. (2011). Bases de Datos Diseño, implementación y administración (Novena edición). México: Cengage Learning Editores. (Libro digital).