Sie sind auf Seite 1von 15

Microsoft SQL Server 2000 - Programacin e Implementacin

Mdulo 1: Introduccin Bases de datos Relacinales

Contenido
Introduccin Que es una Base de Datos Relacional Concepto de Tablas y Elementos Relaciones Normalizacin de Bases de Datos Qu es el Lenguaje Estructurado de consultas SQL? 3 4 6 8 11 15

Mdulo 1 Introduccin a Bases de Datos Relacionales

Mdulo 1 Introduccin a Bases de Datos Relacionales

In rod ccin t u

Introduccin

Q ee u aBa d u s n se e

Este mdulo explica el concepto de Bases de Datos Relacionales. Al terminar este mdulo el alumno ser capaz de diferenciar los conceptos de:

Con p o d Ta s y ce t e bla

Tablas Campos y Registros Relaciones Normalizacin de Bases de Datos Lenguaje Estructurado de Consultas SQL

N a cind Ba orm liza e

Q ee e Le gu jee u s l n a

Mdulo 1 Introduccin a Bases de Datos Relacionales

Q ee u aBa d u s n se

Base de Datos

Ba s d D t se e a os

Una base de datos es similar a un archivo de datos, que es tambin un lugar de almacenamiento de datos. Como en un archivo de datos, una base de datos no presenta informacin directamente al usuario. El usuario ejecuta una aplicacin que tiene acceso a los datos de la base de datos y los presenta al usuario en un formato inteligible. Los sistemas de bases de datos son ms eficaces que los archivos de datos, ya que los datos estn mejor organizados. En una base de datos bien diseada, no hay elementos de datos duplicados que el usuario o la aplicacin deba actualizar al mismo tiempo. Los elementos de datos estn agrupados en una nica estructura o registro, y se pueden definir relaciones entre dichas estructuras y registros. Cuando se trabaja con archivos de datos, las aplicaciones se tienen que codificar para trabajar con la estructura especfica de cada archivo de datos. En contraste, las bases de datos contienen un catlogo que las aplicaciones pueden utilizar para determinar la organizacin de los datos. Las aplicaciones de bases de datos genricas pueden utilizar el catlogo para presentar dinmicamente a los usuarios datos de distintas bases de datos, sin tener que depender de formatos de datos especficos.

Ba d D tosRe c se e a la

Generalmente, una base de datos tiene dos partes principales: los archivos que almacenan la base de datos fsica y el software del sistema de administracin de la base de datos (DBMS, Database Management System), que las aplicaciones utilizan para tener acceso a los datos. El DBMS es el responsable de mantener la estructura de la base de datos, que incluye: El mantenimiento de las relaciones entre los datos de la base de datos. La garanta de que los datos estn correctamente almacenados y de que no se infrinjan las reglas que definen las relaciones entre los datos. La recuperacin de todos los datos hasta un punto coherente en caso de errores del sistema.

Mdulo 1 Introduccin a Bases de Datos Relacionales

Base de Datos Relacional Si bien hay diferentes maneras de organizar los datos en una base de datos, las bases de datos relacionales son una de las ms efectivas. Los sistemas de bases de datos relacionales son una aplicacin de la teora matemtica de conjuntos al problema de la organizacin de datos. En una base de datos relacional, los datos estn organizados en tablas (llamadas relaciones en la teora relacional).

Mdulo 1 Introduccin a Bases de Datos Relacionales

Con p o d Ta la ce t e b

Tablas

Ta la b s
Filas y Colum nas Clave Principal Claves Externas

Una tabla representa una clase de objeto que tiene cierta importancia en una organizacin. Por ejemplo, una organizacin puede tener una base de datos con una tabla para los empleados, otra tabla para los clientes y otra para los almacenes.

Elem n d U aTa e tos e n


Elementos de una Tabla Cada tabla se crea con columnas y filas (llamados atributos y tuplas en la teora relacional). Cada columna representa algn atributo del objeto representado por la tabla. Por ejemplo, una tabla Employee tendra columnas para los atributos como name, last name, employee ID, department, pay grade y job title. Cada fila representa una instancia del objeto representado por la tabla. Por ejemplo, una fila de la tabla Employee representa el empleado cuyo Id. de empleado es 12345.

Al organizar los datos en tablas, se pueden encontrar varias formas de definirlas. La teora de las bases de datos relacionales define un proceso llamado normalizacin, que garantiza que el conjunto de tablas que define, organizarn los datos de manera eficaz.

Mdulo 1 Introduccin a Bases de Datos Relacionales

Cla s ve

Claves Hay dos tipos de Claves. Clave Principal Una Clave Principal es uno o ms campos (Columnas) cuyo valor o valores identifican de manera exclusiva cada registro de una tabla. Las claves principales tambin de denominan restricciones de clave principal, porque realmente restringen los valores que se pueden agregar a la tabla: evitan que se agregue una fila a la tabla, cuyas columnas de clave principal son iguales a los valores correspondientes de otra fila de dicha tabla. Clave Externa Una clave externa es una correspondencia entre un conjunto de columnas de una tabla y el conjunto de columnas de la clave principal de otra tabla. Cuando se analizan las claves externas, las dos tablas que participan se denominan, en ocasiones, tabla de claves externas y tabla de claves principales. Las claves externas tambin reciben el nombre de restricciones de clave externa, porque restringen las filas de una tabla: garantizan que las filas que se agreguen a la tabla de claves externas tengan una fila correspondiente en la tabla de claves principales. Es decir, requieren que las filas que se incorporen a la tabla de claves principales tengan valores en la columna de claves externas que se correspondan con los valores respectivos de las columnas de claves principales para una fila de la tabla de claves principales. La caracterstica esencial de un campo clave es que su valor es distinto para cada registro. Al procedimiento de seleccionar el campo clave, y en general, a la estructuracin de la base de datos, se le llama normalizacin. El campo clave sirve para localizar un registro dado y eventualmente seleccionar alguno de sus campos. El hecho de que sea no repetido permite utilizar bsquedas binarias para localizar un registro. Si quisiramos buscar un campo del registro, que no es el campo clave, la bsqueda tendra que realizarse de manera secuencial, o bien construir una tabla alternativa, en la que el campo clave sea el que nos interesa. Es de notarse que no es posible bajo ninguna circunstancia buscar con una clave incompleta o equivocada.

Mdulo 1 Introduccin a Bases de Datos Relacionales

Re cion s la e

Una Relacin es una asociacin establecida entre campos Comunes (columnas) en dos tablas, y puede ser: uno a uno, uno a varios, o varios a varios.

Mdulo 1 Introduccin a Bases de Datos Relacionales

Re cion se t la e n reTa bl

Relaciones de Tablas

Re cion se tret b la e n a l

Puede crear una relacin entre las tablas en un diagrama de base de datos para mostrar cmo se vinculan las columnas de una tabla a las columnas de otra tabla. En una base de datos relacional, las relaciones permiten evitar la existencia de datos redundantes.

U oaU o n n

Por ejemplo, si est diseada una base de datos para hacer un seguimiento de sus libros, podra tener una tabla con el nombre titles para almacenar informacin acerca de cada libro, como su ttulo, la fecha de publicacin y el editor. Tambin es posible que se desee almacenar informacin relativa al editor, como el nmero de telfono, la direccin y el cdigo postal. Si desea almacenar toda esta informacin en la tabla titles, el nmero de telfono del editor estara duplicado para cada ttulo publicado por dicho editor. Una solucin mejor es almacenar la informacin del editor una sola vez en una tabla independiente: publishers. Puede colocar un puntero en la tabla titles que haga referencia a una entrada de la tabla del editor.

U oaV rios n a V riosaV rios a a

Para asegurarse que los datos estn sincronizados, puede forzar la integridad referencial entre las tablas titles y publishers. Relacin Uno a Uno Relacin uno a varios En una relacin de uno a uno, cada registro de la Tabla A slo puede tener un registro coincidente en la Tabla B, y viceversa. La relacin uno a varios es el tipo de relacin ms comn. En este tipo de relacin, un registro de la Tabla A, puede tener muchos registros coincidentes en la Tabla B. Pero un registro de la Tabla B slo tiene un registro coincidente en la Tabla A.

In g a te rid dRe re cia fe n

Mdulo 1 Introduccin a Bases de Datos Relacionales

10

Relacin Varios a Varios

En una relacin varios a varios, un registro de la Tabla A, puede tener muchos registros coincidentes en la Tabla B, y viceversa.

Integridad Referencial La integridad referencial es un sistema de reglas que utiliza Microsoft Access para garantizar que las relaciones entre los registros de tablas relacionadas sean vlidas y que no se eliminen ni modifiquen accidentalmente datos relacionados. Las relaciones de integridad referencial ayudan a garantizar que la informacin contenida en una tabla se corresponda con la informacin contenida en la otra. Por ejemplo, cada ttulo de la tabla titles debe estar asociado a un editor especfico de la tabla publishers. Un ttulo no se puede agregar a la base de datos de un editor que no exista en la base de datos.

Mdulo 1 Introduccin a Bases de Datos Relacionales

11

N a cind B orm liza e

Normalizacin:

N a cin orm liza Form s N a s a orm le

La Normalizacin es el proceso mediante el cual se transforman datos complejos a un conjunto de estructuras de datos ms pequeas, que adems de ser ms simples y ms estables, son ms fciles de mantener. Tambin se puede entender la normalizacin como una serie de reglas que sirven para ayudar a los diseadores de bases de datos a desarrollar un esquema que minimice los problemas de lgica. Cada regla est basada en la que le antecede. La normalizacin 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 conduca a errores de lgica cuando se trataban de manipular los datos. La normalizacin tambin hace las cosas fciles de entender. Las guas que la normalizacin provee, crean el marco de referencia para simplificar una estructura de datos compleja. Otra ventaja de la normalizacin de base de datos es el consumo de espacio. Una base de datos normalizada ocupa menos espacio en disco que una no normalizada. Hay menos repeticin de datos, lo que tiene como consecuencia mucho menor uso de espacio en disco.

Gra osd N a d e orm liza

El proceso de normalizacin tiene un nombre y una serie de reglas para cada fase. Esto puede parecer un poco confuso al principio, pero poco a poco se va entendiendo el proceso, as como las razones para hacerlo de esta manera.

Mdulo 1 Introduccin a Bases de Datos Relacionales

12

Grados de Normalizacin En los aos 70 Codd cre las bases de la teora de la normalizacin. A cada regla de la teora la denomin forma normal. Codd cre las formas normales 1, 2 y 3. La 3 forma normal origin problemas. Boyce ayud a solventarlos con la f.n. de Boyce-Codd (FNBC). A finales de los 70 Fagin cre las formas normales 4 y 5. Cada una de estas formas tiene sus propias reglas. Cuando una base de datos se conforma a un nivel, se considera normalizada a esa forma de normalizacin. No siempre es una buena idea tener una base de datos conformada en el nivel ms alto de normalizacin, ya que esto puede llevar a un nivel de complejidad que podra ser evitado si estuviera en un nivel ms bajo de normalizacin. Las formas normales se basan en el concepto de dependencia, que comprende las restricciones definidas sobre los atributos de una relacin. Existen diferentes tipos de dependencia: Dependencias funcionales (Formas normales 1, 2 y 3 y FNBC) Dependencias multivaluadas (4 forma normal) Dependencia de JOIN (5 forma normal)

Mdulo 1 Introduccin a Bases de Datos Relacionales

13

Form sN a s a orm le

Primera Forma Normal La regla de la Primera Forma Normal establece que las columnas repetidas deben eliminarse y colocarse en tablas separadas. Poner la base de datos en la Primera Forma Normal resuelve el problema de los encabezados de columna mltiples. Muy a menudo, los diseadores de bases de datos inexpertos harn algo similar a la tabla no normalizada. Y una y otra vez, crearn columnas que representen los mismos datos. La normalizacin ayuda a clarificar la base de datos y a organizarla en partes ms pequeas y ms fciles de entender. En lugar de tener que entender una tabla gigantesca y monoltica que tiene muchos diferentes aspectos, slo tenemos que entender los objetos pequeos y ms tangibles, as como las relaciones que guardan con otros objetos tambin pequeos. Segunda Forma Normal La regla de la Segunda Forma Normal establece que todas las dependencias parciales se deben eliminar y separar dentro de sus propias tablas. Una dependencia parcial es un trmino que describe a aquellos datos que no dependen de la llave primaria de la tabla para identificarlos. Una vez alcanzado el nivel de la Segunda Forma Normal, se controlan la mayora de los problemas de lgica y podremos insertar un registro sin un exceso de datos en la mayora de las tablas. Tercera Forma Normal Una tabla est normalizada en esta forma, si todas las columnas que no son llave son funcionalmente dependientes por completo de la llave primaria y no hay dependencias transitivas. Comentamos anteriormente que una dependencia transitiva es aquella en la cual existen columnas que no son llave y que dependen de otras columnas que tampoco lo son. Cuando las tablas estn en la Tercera Forma Normal se previenen errores de lgica cuando se insertan o borran registros. Cada columna en una tabla est identificada de manera nica por la llave primaria, y no debe haber datos repetidos. Esto provee un esquema limpio y elegante, que es fcil de trabajar y expandir.

Mdulo 1 Introduccin a Bases de Datos Relacionales

14

Qu tan lejos debe llevar la normalizacin? La siguiente decisin es qu tan lejos debe llevar la normalizacin? La normalizacin es una ciencia subjetiva. Determinar las necesidades de simplificacin depende de nosotros. Si nuestra base de datos va a proveer informacin a un solo usuario para un propsito simple y existen pocas posibilidades de expansin, normalizar los datos hasta la 3FN quiz sea algo exagerado. Las reglas de normalizacin existen como guas para crear tablas que sean fciles de manejar, as como flexibles y eficientes. A veces puede ocurrir que normalizar los datos hasta el nivel ms alto no tenga sentido. Se estn dividiendo tablas, slo para seguir las reglas o estas divisiones son en verdad prcticas? stas son el tipo de cosas que nosotros como diseadores de la base de datos necesitamos decidir, y la experiencia y el sentido comn nos pueden auxiliar para tomar la decisin correcta. La normalizacin no es una ciencia exacta, sino ms bien subjetiva. Existen seis niveles ms de normalizacin que no se han discutido aqu. Ellos son Forma Normal Boyce-Codd; Cuarta Forma Normal (4NF); Quinta Forma Normal (5NF) o Forma Normal de Proyeccin-Unin; Forma Normal de Proyeccin-Unin Fuerte; Forma Normal de Proyeccin-Unin Extra Fuerte; y Forma Normal de Clave de Dominio. Estas formas de normalizacin pueden llevar las cosas ms all de lo que necesitamos. Existen para hacer una base de datos realmente relacional y tienen que ver principalmente con dependencias mltiples y claves relacionales.

Mdulo 1 Introduccin a Bases de Datos Relacionales

15

Q ee e Le g a u s l nu SQ L?

Lenguaje Estructurado de Consultas

Le g a n u jeEst u ruct rad

El Lenguaje Estructurado de Consulta (SQL) es un lenguaje de base de datos normalizado, utilizado por los diferentes motores de bases de datos para realizar determinadas operaciones sobre los datos, o sobre la estructura de los mismos. Pero como sucede con cualquier sistema de normalizacin hay excepciones para casi todo. De hecho, cada motor de bases de datos tiene sus peculiaridades y lo hace diferente de otro motor. Por lo tanto, el lenguaje SQL normalizado (ANSI) no nos servir para resolver todos los problemas, aunque si se puede asegurar que cualquier sentencia escrita en ANSI ser interpretable por cualquier motor de datos.

Com on n e d l SQ p ets e L

Componentes del SQL El lenguaje SQL est compuesto por comandos, clusulas, operadores y funciones de agregado. Estos elementos se combinan en las instrucciones para crear, actualizar y manipular las bases de datos.

Das könnte Ihnen auch gefallen