Capítulo 2. Creación de Base de Datos
-
Upload
arturo-silva -
Category
Documents
-
view
5 -
download
0
description
Transcript of Capítulo 2. Creación de Base de Datos
![Page 1: Capítulo 2. Creación de Base de Datos](https://reader035.fdocumento.com/reader035/viewer/2022081813/55cf8c595503462b138ba8ba/html5/thumbnails/1.jpg)
Alumno: Silva Martínez Carlos Arturo
Grupo: 5604 Materia: Diseño base de datos
Profesor: Jiménez Alfaro Abraham Jorge
CAPÍTULO-2.-CREACIÓN-DE-BASE-DE-DATOS
INTRODUCCIÓN
En el capítulo anterior vimos los conceptos básico acerca del software SQL Server 2005,
sobre los requisitos que debe de tener el hardware los pasos a seguir para sí instalación y
las características de la versión 2005.
En este capítulo se hablara acerca de tablas, campos y registros, toda base de datos está
formada por uno a varios bloques de información llamadas tablas, que normalmente tendrá
algunas características en común.
Una tabla o archivo de datos es un conjunto conexo de información del mismo tipo. Cada
tabla está formada por registros, un registro es la unidad elemental de información de la
tabla. En la tabla está constituido por un registro de información.
Cada registro está formado por uno o más elementos llamados campos. Un campo es cada
una de las informaciones que interesa almacenar en cada registro, y es por tanto la unidad
elemental de información de registro.
Gracias a la aparición de los llamados programas de usuario es posible realizar la gestión de
tablas de una base de datos, sin tener que realizar programas que procesan esos datos,
facilitando todas las operaciones de creación, actualización, consultas y creación de
informes de los datos recogidos.
Estructura de base de datos
Los sistemas de gestión de base de datos organizan y estructuran los datos de tal modo que
puedan ser recuperados y manipulados por usuarios y programas de aplicación. Las
estructuras de los datos y las técnicas de acceso proporcionadas por un DBMS particular se
denominan modelo de datos.
Modelos de datos primitivos: sistemas de gestión de archivos
Cuando la gestión de base de datos se popularizo durante los años setenta y ochenta,
emergió un puñado de modelos de datos populares.
Un sistema de gestión de archivos, generalmente proporcionado por el fabricante del
computador como parte del sistema operativo, llevaba la cuenta de los nombres y
ubicaciones de los archivos. El sistema de gestión de archivos básicamente no tenía un
![Page 2: Capítulo 2. Creación de Base de Datos](https://reader035.fdocumento.com/reader035/viewer/2022081813/55cf8c595503462b138ba8ba/html5/thumbnails/2.jpg)
modelo de datos; no sabía nada acerca de los contenidos internos de los archivos. Para el
sistema de gestión de archivos, un archivo que contuviera un documento de procesamiento
de texto y un archivo que contuviera datos de nóminas aparecían igual.
Procesaban el archivo maestro de empleados contuviesen una descripción de archivo (DA)
que describía la composición de los datos en el archivo. Si la estructura de los datos
cambiaba, todos los programas que asedian al archivo tenían que ser modificados.
Bases de Datos Jerárquicas
La organización jerárquicas, que Esla que primero se utilizó, se basa en el establecimiento
de jerarquías o niveles entre los distintos campos de los registros, basados en el criterio de
que los campos de mayor jerarquía sean los más genéricos y tienen una estructura
arborescente, donde los nodos del mismo nivel corresponden a los campos y cada rama a
un registro.
Esta forma de organización puede hacer lenta la obtención de determinadas informaciones,
ya que para acceder a un nodo hay que recorrer toda la rama, partiendo de la raíz, es decir,
todos los campos precedentes en el registro.
Uno de los sistemas de gestión de base de datos jerárquicas más populares fue el
información management system (IMS) de IBM. Este sistema presentaba como ventajas su
estructura simple, la posibilidad de representar relaciones padre/hijo que se utilizaban
como punteros físicos y el rendimiento.
Bases de datos en red
Para resolver el problema de lentitud de la organización jerárquica se utiliza la organización
en red corresponde a una estructura de grafo, donde existe más B
Si se crean conexiones entre nodos de igual nivel, el acceso a campos de determinado nivel
se lograra más rápidamente. El modelo de datos en red extiende el modelo jerárquico
permitiendo que un registro participe en múltiples relaciones padre/hijo. Estas relaciones
se conocen como conjunto. ES en el modelo de red.
El inconveniente esencial de esta estructura es la necesidad de utilizar mucha más cantidad
de memoria, al tener que almacenar en cada nodo las posiciones de los campos siguientes,
mediante apuntadores.
Para un programador, acceder a una base de datos en red era muy similar a acceder a una
base de datos jerárquicos. Un programa de aplicación podía:
Hallar un registro padre especifico mediante clave (como, por ejemplo, un numero
de cliente en un procesamiento de pedidos).
![Page 3: Capítulo 2. Creación de Base de Datos](https://reader035.fdocumento.com/reader035/viewer/2022081813/55cf8c595503462b138ba8ba/html5/thumbnails/3.jpg)
Descender al primer hijo en un conjunto particular (el primer pedido remitido
por este cliente)
Moverse lateralmente de un hijo al siguiente dentro del conjunto (la orden siguiente
remitida por el mismo cliente).
Ascender desde un hijo a su padre en otro conjunto (el vendedor que acepto el
pedido).
Bases de datos relacionales
Quizá, el problema fundamental que sale platearse al realizar una base de datos real,
formada por varias tablas, es la repetición de datos, es decir, campos repetidos en
diferentes tablas, lo cual va a dificultar su gestión, es decir, la actualización, inserción,
modificación, eliminación, consulta.
La teoría relacional se basa en el concepto matemático de relación. Se debe a E.F. codd,
quien ha desarrollado una sólida fundamentación teórica. Aunque dicha teoría requiere
para su completa implantación que el acceso a la memoria sea por contenido y no por
dirección.
Las principales ventaja de la utilización de bases de datos relacionales son:
• Actúan sobre las tablas en su conjunto, en lugar de hacerlo sobre los registros
como ocurre en otros sistemas.
• Se puede realizar consultas complejas que utilizan varias tablas de forma simple.
• Son fáciles de utilizar (la organización física de los datos, es independiente de su
tratamiento lógico).
Características de las bases de datos relacionales
Para que la estructura de las tablas cumpla las leyes de la teoría relacional deben
satisfacerse las siguientes condiciones:
1. Todos los registros de la tabla deben tener el mismo número de campos, deben ser
registros de longitud fija.
2. Cada campo tiene un nombre o etiqueta que hay que definir previamente a su
utilización.
3. La base de datos estará formada por muchas tablas, una por cada tipo de registro.
4. Dentro de una tabla cada nombre de campo debe ser distinto
![Page 4: Capítulo 2. Creación de Base de Datos](https://reader035.fdocumento.com/reader035/viewer/2022081813/55cf8c595503462b138ba8ba/html5/thumbnails/4.jpg)
5. Los registros de una misma tabla tiene que diferenciarse, al menos, en el contenido
de alguno de sus campos, no puede haber dos registros “idénticos”.
6. Los registros de una tabla pueden estar dispuestos en cualquier orden.
7. El contenido de cada campo está delimitado por un rango de valores posibles.
8. Permite la creación de nuevas tablas a partir de las ya existentes, relacionado
campos de distintas tablas anteriores.
Operaciones relacionales básicas
Una base de datos relacional constara de varias tablas con las que se seden efectuar tres
operaciones fundamentales, llamadas operaciones relacionales que permiten la creación
de nuevas tablas a partir de las ya existentes.
La selección consiste en la obtención de una nueva tabla (fichero) formado por alguna de
las filas (registros) seleccionadas de otra tabla previamente existente. La selección utiliza
algún criterio que permita decidir que registros de la tabla se incluye en la nueva tabla.
La proyección consiste en la obtención consiste en la obtención de una nueva tabla (fichero)
formada por algunas columnas (campos) seleccionadas de otra tabla previamente
existente. En el caso de que al elegir determinados campos el resultado produzca registros
idénticos en la nueva tabla solo figurara uno de los registros repetidos. Normalmente
pueden efectuarse simultáneamente la selección y la proyección.
La concatenación consiste en la observación de una nueva tabla (fichero) uniendo dos tablas
ya existentes. Por lo general, la unión de registro se efectúa si en ambas tablas coincidencia,
se crea un registro en la nueva tabla, añadiendo a los campo de la primera tabla los de la
segunda.
Para comprender mejor la operación de concatenación anterior vamos a ver los pasos en
que ha consistido el proceso:
1. Consultar el valor del campo del primer registro de la primera tabla cuyo
contenido se desee casar con la segunda tabla.
2. Compararlo con los calores del campo de cada uno de los registros de la segunda
tabla, cuyo contenido deba coincidir.
3. Si hay correspondencia se añade una fila (registro) a la tabla resultado, uniendo
las filas de las tablas iniciales (en horizontal).
4. Se siguen realizando comparaciones con todas las filas de ambas tablas,
buscando la coincidencia de los respectivos campos a casar.
![Page 5: Capítulo 2. Creación de Base de Datos](https://reader035.fdocumento.com/reader035/viewer/2022081813/55cf8c595503462b138ba8ba/html5/thumbnails/5.jpg)
Otras operaciones relacionales y operadores booleanos
Aparte de las operaciones básicas de selección, proyección y concatenación, en las bases de
datos relacionales pueden realizarse operaciones similares a la utilizadas en la teoría de
conjuntos, siendo los tres primeros equivalentes a los operadores booleanos OR, AND y
NOT, respectivamente.
La unión tiene como resultado la tabla formada por la agregación de registros de dos tablas
que ya existen. La intersección tiene como resultados la tabla formada por los registros
comunes a dos tablas que ya existen.
La diferencia tiene como resultado la tabla formada por los registros de una tabla ya creada
que no figura en otra tabla también creada. Existe una equivalencia entre las operaciones
UNION, INTERSECCION y COMPLEMENTACIÓN y los operadores booleanos OR, AND y NOT,
cuya definición es similar.
Creación de las tablas de una base de datos relacional
El primer punto a abordar en la generación de las tablas es establecer una tabla “vacía”.
Esta tarea se realiza, bien mediante un asistente, o bien mediante el comando CREATE
TABLE de SQL. Estudiaremos las sentencias CREATE TABLE, INSERT y otras órdenes de
actualización (UPDATE, DELETE, etc.).
La sentencia CREATE TABLE crea un “objeto” dentro del sistema. Hay otros objetos
importantes en el sistema, como los índices, que se establecen mediante asistes o
ejecutando la sentencia CREATE INDEX de SQL. Un índice es una estructura interna que el
sistema puede usar para encontrar uno o más registros en una tabla de forma rápida.
os objetivos más importantes de la creación de tablas mediante asistentes o mediante la
sentencia CREATE TABLE de SQL podrían enumerarse como sigue:
• Establecer nuevas tablas en la base de datos y asignarles un nombre
• Asignar nombre a todas las columnas de cada tabla y definir sus tipos de datos
• Especificar la sentencia u orden de columnas por defecto
• Especificar que columna no pueden aceptar valores nulos. El valor nulo no debe
confundirse con el valor cero, pues cero no es un valor nulo
• Especificar la clave primaria
• Especificar las claves secundarias, externas o foráneas
Normalización de una base de datos
![Page 6: Capítulo 2. Creación de Base de Datos](https://reader035.fdocumento.com/reader035/viewer/2022081813/55cf8c595503462b138ba8ba/html5/thumbnails/6.jpg)
Las relaciones entre los países o entre departamentos de una compañía o entre usuarios y
diseñadores son el resultado de circunstancias históricas particulares, que pueden definir
las actuales relacionales aun cuando las circunstancias iniciales hayan pasado.
La normalización es un proceso de que pone las cosas en su sitio, haciéndolas normales, el
origen de esta palabra viene del latín norma que era una “escuadra de carpintero”. Los
conceptos básicos de normalización se introducen aquí para que los usuarios puedan
construir a diseñar una aplicación que van a usar posteriormente, o para comprender una
aplicación que ya ha sido construida.
La normalización es una técnica eficaz para el diseño de bases de datos que pueden
aplicarse tanto a sistemas relacionales como a otros modelos. La normalización tiene tres
etapas que transforman las relaciones no normales en normalizadas y que se denominan
primera, segunda y tercera formas normales.
• Primera forma normal: es poner los datos en la primera forma normal. Esto se
hace situando los datos en tablas separadas, de manera que los datos de cada
tabla sean de un tipo similar y dando a cada tabla una clave primaria y un
identificador o etiqueta única.
• Segunda forma normal: se centra en aislar los datos que solo depende de una
parte de la clave. Para obtener la segunda forma normal, se deben sacar oficio y
descripción a una tercera tabla. La clave primaria de tercera tabla es oficio y su
larga descripción aparece una sola vez. Con la segunda forma norma, tanto oficio
como su descripción pertenecen en la base de datos, aunque en ese momento
no haya ningún trabajador con esos oficios.
• Tercera forma normal: implica deshacerse de cualquier cosa de las tablas que no
dependa únicamente de la clave primaria.
Creación de una base de datos con SQL Server
Una base de datos de Microsoft SQL Server 2005 está formada por un conjunto de tablas
en las que se almacenan datos estructurados una tabla contiene una colección de filas. Cada
columna almacena un determinado tipo de información. Las tablas contienen diversos tipos
de controles, que garantiza la validez de los datos. Las tablas pueden presentar índices,
similares a los de los libros, que permitan localizar las filas rápidamente.
Se puede agregar restricciones de integridad referencial declarativa a las tablas con el fin
de asegurar la coherencia de los datos interrelacionados que se encuentran en tablas
distintas.
![Page 7: Capítulo 2. Creación de Base de Datos](https://reader035.fdocumento.com/reader035/viewer/2022081813/55cf8c595503462b138ba8ba/html5/thumbnails/7.jpg)
En la creación de una nueva base de datos es muy necesaria la configuración de la estructura
de almacenamiento de los datos. La arquitectura de almacenamiento de SQL Server 2005
distribuye la información de la base de datos en diversos archivos de datos y de registro de
transacciones.
Archivo de datos principal o primario: archivo con extensión. Mdf que contiene la
información de inicio para la base de datos y se utiliza para almacenar datos. Archivos de
datos secundarios: Archivo con extensión es .Ndf que contienen todos los datos que no
caben en el archivo principal. Las bases de datos no necesitan archivos de datos secundarios
si el archivo principal puede contener todos los datos archivos de datos secundarios i el
archivo principal puede contener todos los datos. Archivos de registro de transacciones
(transaction log): archivos con extensión .Ldf que contienen la información de registro que
se utiliza para recuperar la base de datos.
Los grupos de archivo definidos por el usuario son todos los creados específicamente por el
usuario durante la creación de la base de datos o durante una modificación posterior. El
registro de transacciones está formado por una serie de registros de todas las
modificaciones de la base de datos y de la transacción que ha realizado cada modificación.
Estimar el tamaño de una tabla
Para estimar el tamaño que ocupa una tabla pueden tenerse en cuenta los siguientes pasos:
1. Se multiplica el número de columnas fijas por la longitud en bytes de cada una.
2. Las columnas de longitud fija necesitan un espacio adicional para gestionar la
administración de valores NULL.
3. Si hay columnas de longitud variable en la tabla, se determina el espacio que se
utiliza para almacenar las columnas de la fila mediante la expresión.
4. Si prevé que va utilizarse un porcentaje inferior del espacio de almacenamiento
de las columnas de longitud variable, podrá ajustarse el resultado en función de
ese porcentaje para obtener una estimación más precisa del tamaño de la tabla.
5. Al valor calculado hasta ahora se añaden 4 bytes del tamaño del encabezado y
se obtiene el espacio que ocupa una fila.
6. A continuación se calcula el número de filas por página mediante la expresión
8096.
7. Si va a crear un índice agrupado en la tabla, calcule el número de filas libres
reservadas por página según el factor de relleno.
8. El número de páginas estimado debe redondearse a la siguiente página
completa.
9. Por último, para calcular la cantidad de espacio necesario para almacenar los
datos en una tabla (8.192 bytes por página).
![Page 8: Capítulo 2. Creación de Base de Datos](https://reader035.fdocumento.com/reader035/viewer/2022081813/55cf8c595503462b138ba8ba/html5/thumbnails/8.jpg)
Estimar el tamaño de la base de datos
Para calcular el espacio total a asignar para una base de datos hay que tener en cuenta
varios factores, entre los que destacan los siguientes:
• Tamaño de la base de datos Modle y de las tablas del sistema, incluyendo la
posibilidad de su crecimiento.
• Total de datos a almacenar en las tablas, incluyendo la previsión de su
crecimiento.
• Los índices a utilizar y sobre todo el tamaño del valor de las claves, el número de
filas y el valor del factor de relleno.
• El tamaño del registro de transacciones que depende sobre todo de la frecuencia
de las modificaciones, el tamaño de las transacciones y la frecuencia de las copias
de seguridad.
Creación de una base de datos SQL Server mediante el administrador corporativo.
Antes de realizar ninguna acción, es necesario tener presente que para poder crear una
base de datos, el propietario creador de la nueva base de datos debe tener permiso para
usar la base de datos master (base de datos por defecto de SQL Server), ya que se
modificaran sus tablas sysdatabases y sysaltfiles para grabar la información acerca de la
nueva base de datos.
En el proceso de creación de una base de datos se puede definir su nombre, establecer sus
propiedades y fijar la ubicación de sus archivos. Hay que tener presente que es muy
importante hacer una copia de seguridad de la base de datos master antes de crear,
modificar o eliminar una base de datos.
Se obtiene el cuadro nueva base de datos cuya ficha general presenta los siguientes campos:
• Nombre de la base de datos: Se introduce el nombre lógico de la base de datos
a crear.
• Propietario: Se elige el propietario de la base de datos a crear (se puede elegir el
propietario haciendo clic en el botón… situado a la derecha del campo).
• Usar indización de texto: Se elige si se quieren acelerar las búsquedas de texto,
ordenaciones y otras operaciones con texto.
• Archivos de base de datos: Se especifica el nombre lógico, tipo, grupos de
archivos, tamaño inicial, tipo de crecimiento y ubicación de los archivos de la
base de datos.
![Page 9: Capítulo 2. Creación de Base de Datos](https://reader035.fdocumento.com/reader035/viewer/2022081813/55cf8c595503462b138ba8ba/html5/thumbnails/9.jpg)
El crecimiento de archivos puede ser:
• En megabytes: Especifica el número de megabytes que deben crecer los archivos
de datos.
• En porcentaje: Especifica el porcentaje en el que se desea que los archivos de
datos crezcan automáticamente. El tamaño máximo del archivo especifica la
limitación del crecimiento de los archivos según indican las siguientes opciones.
• No limitar el crecimiento de los archivos: Especifica que el crecimiento de los
archivos de datos no estará restringido.
• Limitar crecimiento de archivo a (MB): Especifica el tamaño, en megabytes, hasta
el que puede crecer un archivo de datos.
Intercalación: Permite elegir distintos juegos de caracteres relativos a los diferentes
idiomas, que se seleccionan con la flecha situada a la derecha del campo.
Modelo de recuperación: Permite elegir distintos tipos de recuperación de la base de datos.
El modelo completo realiza una recuperación completa de la base de datos controlando el
último backup y las operaciones de log hasta el momento de la caída. El modo simple no
usa el log en la recuperación y recupera desde el última backup. El modo registro masivo
recupera hasta el último registro del log.