Capítulo 2. Creación de Base de Datos

9
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

description

Capitulo 2

Transcript of Capítulo 2. Creación de Base de Datos

Page 1: Capítulo 2. Creación de Base de Datos

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

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

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

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

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

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

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

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

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.