Вы находитесь на странице: 1из 22

LAS BASES DE DATOS RELACIONALES Y SUS ELEMENTOS CONCEPTOS BSICOS

Un dato es un conjunto de smbolos que por s solo carece de sentido.

Ejemplos: Fernndez, 20, Salamanca, 100, etc.

Por informacin se entiende un conjunto de datos relacionados a partir del cual se pueden extraer conclusiones valiosas acerca de ciertas situaciones.

Ejemplo: con los datos anteriores puede averiguarse que el estudiante Fernndez tiene 20 aos, paga de matrcula por el curso 100 y es de Salamanca.

Una base de datos es el almacn donde se guardan todos estos datos inconexos.

El sistema gestor de base de datos (SGBD) es el software (Access, Oracle, MySQL, etc.) que permite obtener la informacin til en cada caso a partir de los datos almacenados. Los SGBDs son herramientas que se adquieren en el mercado y con las que incluso se pueden disear entornos propios para poder manipular los datos.

Existen diferentes tipos de SGBDs con respecto a las estructuras que emplean para guardar los datos: jerrquicos, en red, por objetos, etc., pero en la actualidad los SGBDs ms utilizados son los relacionales por ser los ms eficientes y fciles de usar. Los SGBDs relacionales sern los sistemas que estudiaremos a continuacin.

TABLAS

En los sistemas gestores de bases de datos relacionales se emplean las tablas para almacenar los datos. Una tabla es una estructura en la que se distingue entre:

a)

registro: es una fila de la tabla; cada uno de ellos contiene datos sobre algo concreto. Tambin se les puede llamar tuplas.

b)

campo: es una columna de la tabla; se identifica con un nombre. Todos los valores que almacena un campo deben ser del mismo tipo (cadena de caracteres, numrico, fecha, hora, moneda, etc.).

c)

celda: interseccin de un registro con una columna. Cada celda contiene un dato.

Las tablas cumplen una serie de propiedades: estn identificadas por un nombre, dos campos no se pueden llamar igual, todas las filas tienen igual nmero de campos y todas las columnas tienen igual nmero de celdas, no hay dos filas repetidas (con todos los datos idnticos para los mismos campos), cada celda tiene un nico dato, el orden de las filas y de las columnas es irrelevante.

Ejemplo: la tabla ALUMNOS.

ALUMNOS dni cdigoalumno nombre apellidos telfono (942) 30-3030 (942) 55-5555 (942) 89-8989 cdigocurso C1-2

13111111-A A-0023

Ana

Fernndez Daz

20111111-D B-8888

Luis

Gmez Gmez

C1-2

25111111-X C-9987 Manuel Daz Gmez

C1-3

CLAVES

Una clave es un campo o una combinacin de varios campos de la tabla que tiene ciertas caractersticas. En un sistema gestor de base de datos existen los siguientes tipos de claves:

1.

Clave candidata: campo o conjunto mnimo de campos que permiten identifican cada registro. La clave candidata hace que dos filas nunca sean idnticas, por lo que sus valores no se repiten en los diferentes registros. Adems sus valores no pueden ser nulos.

2.

Clave principal: clave candidata tomada por el diseador. Es obligatoria y es nica. Este campo es de gran importancia para el sistema gestor porque con el crea los ndices con los que se ordenan y buscan los datos internamente.

Ejemplo: DNI y cdigo-alumno son claves candidatas de la tabla ALUMNOS pues permiten identificar a cada uno de los alumnos y no requieren ningn otro campo. El diseador elige slo una clave candidata como clave principal, por ejemplo DNI.

3.

Clave ajena: clave que es clave principal en otra tabla. Estas claves permiten relacionar unas tablas con otras. La tabla donde se encuentra la clave ajena se denomina tabla hija y la tabla en la que es clave principal tabla madre. Una tabla puede tener varias claves ajenas o ninguna. Los valores de la clave ajena evidentemente se pueden repetir en los diferentes registros y tomar valores nulos.

Ejemplo: cdigo-curso es una clave ajena de la tabla ALUMNOS y una clave principal de la tabla CURSOS. Esta clave nos permite unir una tabla con la otra, puesto que nos indica las claves de los cursos que realiza cada alumno.

OBJETOS Y TABLAS

Por lo tanto va a haber dos tipos de campos en una tabla: Las claves, que permiten identificar y relacionar las tablas. Los campos descriptivos, que describen propiedades de un objeto (real o abstracto) para el que hemos definido la tabla. Ejemplo: nombre, apellidos y telfono.

Una tabla representa informacin sobre un objeto general (alumno). Cada registro contiene informacin sobre un objeto concreto.

REPRESENTACIN DE LAS TABLAS

Para representar las tablas emplearemos la forma no estndar siguiente. Se pone el nombre de la tabla (sustantivo en plural) y entre parntesis los campos. A los campos que forman la clave principal se les aade el smbolo # a la izquierda. Los campos que son claves ajenas se subrayan. Si una clave ajena est formada por varios campos se ponen juntos y con subrayado comn. Existen casos en que un campo puede formar parte de una clave principal y ser clave ajena en la misma tabla.

Ejemplos:

Nombre-tabla(#nombre-campo1, nombre-campo2, ... , nombre-campoN-1, nombrecampoN) Nombre-tabla(#nombre-campo1, #nombre-campo2, ... , nombre-campoN-1, nombrecampoN) Nombre-tabla(#nombre-campo1, #nombre-campo2, nombre-campo3, ... , nombrecampoN)

CUESTIONES 1) Qu diferencia hay entre datos e informacin? Poner un ejemplo. 2) Qu diferencia hay entre base de datos y sistema gestor de base de datos? 3) Qu sistemas gestores de bases de datos conoces? 4) Qu relacin hay entre un disco duro y una base de datos? 5) Crees qu es importante en nuestros das la obtencin rpida y eficaz de la informacin? Raznalo con tres ejemplos. 6) Escribe cinco aplicaciones que puede tener una bases de datos en nuestra sociedad actual. 7) Qu relacin puede haber entre el concepto de base de datos y el uso de internet? Poner ejemplos. 8) Qu diferencia hay entre una base de datos ofimtica y otra corporativa? 9) Si te dan a elegir al almacenar datos sobre tus CDs entre un fichero .doc (con Word por ejemplo) y las tablas de una base de datos, cul tomaras? Raznalo. 10) Qu caracteriza a los sistemas gestores de bases de datos relacionales? Decir adems dos de sus propiedades. 11) Definir los tres elementos diferentes de una tabla. 12) Qu propiedad deben cumplir los valores de un mismo campo? 13) Cuntos datos diferentes puede haber en una celda? 14) Por qu se debe impedir que en una tabla haya dos registros con valores iguales? cmo se consigue? 15) Decir dos propiedades importantes de las claves candidatas. 16) Decir tres propiedades importantes de la clave principal. 17) Para qu el sistema gestor de bases de datos emplea las claves principales? 18) Decir tres propiedades importantes de la clave ajena. 19) Poner un ejemplo de tabla madre y tabla hija relacionadas.

EL ESPACIO DE TRABAJO La organizacin de la informacin, al igual que en la Hoja de Clculo, se representa en tablas, pero esas tablas no estn creadas de antemano, sino que debemos disearlas antes de introducir o consultar la informacin. Access nos proporciona varios elementos para operar con la base de datos: Las tablas son el objeto principal de la base de datos. En sus columnas se distribuyen los campos de la tabla, en sus filas los registros. Son la forma de representar un objeto o relacin del mundo real. Las consultas se emplean para operar con la informacin de la base de datos: extraer o seleccionar registros que cumplan determinado tipo de condiciones, insertar nuevos registros, modificarlos o eliminarlos. Insertar o modificar la informacin de la base de datos directamente a travs de las tablas es arriesgado, tedioso y, en muchos casos, impracticable. En su lugar, Access proporciona los formularios, que actan como fichas personalizadas para la visualizacin, modificacin e introduccin de datos. Los formularios son una mediacin o interfaz entre el usuario y las tablas de la base de datos. Los informes son una forma de presentar los datos o resultados obtenidos a partir de los datos en un formato fcil de leer, interpretar y comprender. Las macros son un conjunto de operaciones almacenadas para ser ejecutadas en una sola accin Los mdulos son procedimientos escritos en un lenguaje de programacin que nos permiten efectuar determinadas acciones. A travs de ellos podremos extender la funcionalidad de nuestra base de datos tanto como sea necesario. El lenguaje de programacin que admite Access en sus mdulos es el denominado Visual Basic para Aplicaciones.

Nada ms entrar, el entorno de trabajo que se nos mostrar es el siguiente:

Si hacemos clic en Base de Datos en blanco, (Debajo de Introduccin a Microsoft Access) tendremos:

Introducimos el nombre de nuestra base de datos, debajo de Nombre de Archivo (Vamos a llamarla Prueba2) Hacemos Clic en el botn Crear.

Se nos crea una tabla con un campo Id preparado ya para ser la clave primaria, y al lado se nos dice que podemos agregar un nuevo campo. Cambiamos el nombre a Id de cliente

En la siguiente captura, ya se ha incluido la cabecera completa de la tabla

Ahora podemos proceder a rellenar la tabla: Para aadir un nuevo registro a la tabla nos desplazaremos verticalmente hasta el final de ella y veremos una fila en blanco con un asterisco a la izquierda. Podemos escribir en ella los datos del nuevo registro. Si hacemos clic con el botn derecho del ratn en el encabezado de cualquiera de las filas de la tabla y seleccionamos "Nuevo registro" en el men desplegable, Access nos desplazar a ese ltimo registro de la tabla. Para

aadir y eliminar registros podemos tambin emplear los botones del grupo Registros en la ficha Inicio Estamos en la Vista Hoja de Datos. Se ha modificado el tipo de datos del Id, que por defecto est en Autonumrico a Texto, tal y como estn el resto de los datos en esta ocasin.

En la Ficha Inicio de Access 2007 disponemos de una serie de botones y controles que permiten controlar el aspecto visual o la presentacin de los datos, de modo similar a como hicimos con las hojas de clculo. En el grupo Fuente podremos modificar el tipo de letra, su tamao, el estilo, el color de la letra y el fondo. La modificacin de la anchura de las columnas o la altura de las filas de la tabal abierta, podemos hacerlo exactamente igual que en Excel: al situar el ratn sobre la separacin entre columnas o filas en el encabezado de las mismas, el cursor cambia de forma. Manteniendo el botn izquierdo pulsado y moviendo el ratn modificaremos la magnitud deseada. Es posible ocultar alguna de las columnas de la tabla sin borrarla; para ello haremos clic con el botn derecho del ratn sobre la columna que deseamos ocultar y pulsaremos sobre la opcin Ocultar columnas. Para volver a mostrar las columnas ocultas, efectuaremos el mismo procedimiento y pulsaremos sobre la opcin Mostrar columnas, que abrir el cuadro de dilogo del mismo nombre, en el que podremos activar o desactivar las casillas de verificacin de los campos o columnas que queramos mostrar u ocultar.

Si cambiamos la Vista Hoja de Datos a la vista Diseo, nos pide que guardemos la tabla. La guardamos con el nombre de Clientes. Nos aparece lo siguiente:

Como puede verse en la vista Diseo, todos los campos son de tipo Texto. La llave que se encuentra al lado de Id de cliente nos dice que esa es la Clave principal. Los campos podran ser de los siguientes tipo de datos:

Texto: lo emplearemos para almacenar cualquier carcter -incluyendo letras, nmeros con los que no haya que efectuar operaciones matemticas o caracteres especiales. Si introducimos datos que incluyen letras y nmeros, como por ejemplo el NIF de una persona o el CIF de una empresa, debemos escoger este tipo de datos. La longitud mxima de un campo de texto puede determinarse mediante las propiedades del campo Memo: este tipo de datos se aplica a los campos que vayan a almacenar texto con una gran cantidad de informacin -hasta un mximo de 65536 caracteres- como en los campos de observaciones, notas, comentarios, etc. Nmero: se emplea para almacenar nmeros con los que se vaya a operar matemticamente. Por ello, los datos que se introduzcan en un campo de este tipo solo pueden contener nmeros, puntos de millar, comas decimales y el signo menos. Fecha/hora: se usa en los campos que deban almacenar fechas y horas. Moneda: usaremos este tipo de datos para almacenar valores numricos que representen cantidades monetarias. En este tipo podemos almacenar hasta quince dgitos numricos a la izquierda de la coma decimal y hasta cuatro dgitos decimales a su derecha.

Autonumrico: este tipo de datos se asigna a aquellos campos destinados a contener nmeros enteros que Access incrementar automticamente a medida que introduzcamos registros en la tabla. Habitualmente este tipo de datos se aplica al campo que acte como clave principal de la tabla. Para establecer un campo como clave principal podemos seleccionar dicho campo y hacer clic sobre el botn Clave principal en la ficha Diseo (Herramientas de tabla) S/No: Se emplea para almacenar valores lgicos que permitan nicamente seleccionar entre dos opciones ("S/No", "Verdadero/Falso", "Activado/Desactivado") Objeto OLE: se emplea para almacenar en el campo un grfico, dibujo o imagen, un sonido, una hoja de Excel, etctera. Hipervnculo: sirve para almacenar en el campo un enlace web o hipervnculo, en el que podemos determinar la URL a la que acceder el enlace, el texto ancla o texto que mostrar el enlace , la "subdireccin" del documento web y un texto informativo sobre el enlace. Datos adjuntos: en un campo de datos adjuntos podemos incluir un fichero de cualquier tipo, de modo similar a como se adjunta un archivo a un correo electrnico. Asistente para bsquedas: permite vincular los datos de unas y otras tablas.

PROPIEDADES DE LOS DATOS

Tamao del campo: esta propiedad determinar el nmero mximo de caracteres o cifras que puede contener un campo. En el caso de los campos de tipo texto, se introduce directamente el nmero de caracteres permitidos. Para los tipos numricos, Access proporciona diversos formatos, desde el byte (que permite almacenar enteros

entre 0 y 255) hasta el Double o doble que permite almacenar nmeros muy grandes o muy pequeos. Formato: Con esta propiedad se determina la forma de presentacin de los datos de la tabla. Por ejemplo, para los campos tipo Moneda, se puede escoger el formato Euro (que presenta el dato con dos decimales y el smbolo del euro); para campos decimales se puede escoger el formato Porcentaje que multiplicar la cantidad por 100 y le aadir el smbolo "%" ; para los campos tipo Fecha/Hora se pueden escoger opciones como "Fecha larga" o "Fecha corta"; Para los datos de tipo S/No tenemos disponibles las opciones "S/No", "Verdadero/Falso", "Activado/Desactivado" Lugares decimales: para los tipos Nmero y Moneda se puede determinar el nmero de caracteres decimales que habrn de tener los datos; la opcin "Automtico" evita la determinacin de un nmero concreto de cifras decimales. Mscara de entrada: esta propiedad se emplea para limitar los tipos de datos que se pueden introducir en un campo y para establecer cmo se introducen. Las mscaras de entrada se introducen mediante una sintaxis especfica, que incluye elementos como el "0" para especificar que obligatoriamente debe haber un dgito, la "L" para especificar que obligatoriamente debe haber una letra, etctera. As, por ejemplo, "00000", especificara un nmero de cinco letras, por ejemplo un cdigo postal. En cualquier caso,, a pulsar en el botn situado a la derecha de la propiedad Mscara de entrada abrimos el Asistente para mscaras de entrada, que nos permitir especificar mscaras para elementos comunes, y a la vez, familiarizarnos con su lenguaje. Ttulo: permite especificar cmo queremos visualizar la cabecera del campo, como si se tratase de una etiqueta para el mismo. Valor predeterminado: el valor predeterminado de un campo ser el que aparezca automticamente en l cuando se introduzca un nuevo registro. Regla de validacin: sirve para especificar una condicin que debern cumplir todos los datos que se introduzcan en este campo. Se puede introducir manualmente (por ejemplo la expresin >#01/01/1990# en un campo tipo Fecha "obligar" a que las fechas que se introduzcan en ese campo sean posteriores al 1 de enero de 1990) o bien emplear el generador o asistente para reglas de validacin, que abriremos pulsando el botn situado a la derecha de la propiedad

Texto de validacin: aqu se indica el texto que presentar cuando no se incumpla la regla de validacin. En el ejemplo anterior de la fecha, se podra escribir el texto "La fecha debe ser posterior al 1 de enero de 1990" Requerido: cuando un campo es requerido, la base de datos obliga a que introduzcamos en l informacin. Permitir longitud cero: permite que en el campo introduzcamos "Cadenas de longitud cero" o dicho en otras palabras, que permanezca vaco. Habitualmente , cuando establecemos "S" en la propiedad Requerido, debemos establecer "No" en Permitir longitud cero; y tambin viceversa. Indexado: los ndices son una herramienta que facilita y acelera la bsqueda de informacin en una tabla que contenga muchos registros.

OPERACIONES CON REGISTROS: ORDENAR Y FILTRAR DATOS El grupo de botones Ordenar y filtrar en la Ficha Inicio, permite establecer ordenaciones (directas e inversas) de los registros de la tabla. Si nos situamos, por ejemplo, en el campo Nombre de compaa de la tabla clientes y pulsamos el botn Ascendente, veremos cmo se ordenan los registros de la tabla segn el nombre de su compaa; si pulsamos el botn Descendente ocurrir lo mismo, pero lo harn segn un orden alfabtico inverso. El orden ascendente o descendente se concreta de modo diverso segn el tipo de datos: as en Fecha/Hora el orden ascendente corresponde al orden cronolgico (los ms antiguos primeros) y el descendiente al orden cronolgico inverso (Los ms recientes primero) Junto con la ordenacin de los datos es especialmente til el uso de los filtros. Un filtro es una herramienta que permite visualizar solo la informacin de la tabla que cumpla una condicin dada. El filtro propiamente dicho se activa mediante el botn filtro o haciendo clic sobre la flechita situada en la cabecera de las columnas. Al hacerlo, aparece un men que permite filtrar los datos segn los valores de la columna activa

El filtro por seleccin toma el valor de la celda activa y propone varios filtros en funcin de su valor. Por ejemplo, si seleccionamos la celda "Michael Ende" y pulsamos el botn seleccin, Access ofrece la posibilidad de filtrar los registros y obtener todos los que sean iguales a ese nombre, que lo contengan, que no sean iguales a ese nombre, etc. Las opciones de filtro por seleccin aparecen tambin al hacer clic con el botn derecho sobre cualquiera de las celdas de la tabla

Un tipo de filtro ms verstil y complejo es el Filtro por formulario que permite establecer varias opciones de filtrado. Se activa pulsando el botn Avanzadas y, en el men que se despliega entonces, la opcin Filtro por formulario. Con el filtro por formulario podemos introducir uno o varios criterios de filtrado. . Si introducimos valores en varias columnas del filtro, estaremos estableciendo una conexin Y (Los resultados del filtro debern cumplir con todas las condiciones simultneamente). En la parte inferior hay una pestaa "Or" con la que podemos establecer condiciones O (los resultados del filtro cumplirn con una o varias condiciones. Una vez diseado el filtro, lo aplicaremos haciendo clic sobre el botn Alternar filtro o mediante el botn Avanzadas y la opcin Aplicar filtro u ordenar. Para desactivar el filtro hacemos clic sobre el botn alternar filtro.

NDICES El ndice en una base de datos cumple una funcin similar a la del ndice del libro impreso: permite encontrar con ms rapidez los registros de una tabla. A cambio, el ndice ocupa cierto espacio adicional, y hace por tanto que el archivo de la base de datos sea ms pesado. Los ndices son especialmente tiles en tablas con gran cantidad

de registros. Cada tabla puede tener definidos uno o ms ndices, particularmente aquellos en los que ms bsquedas y ordenaciones se efecten. Para crear un ndice modificaremos la propiedad Indexado (En la vista diseo de la tabla) Por defecto, dicha propiedad tiene el valor "No"; disponemos de dos posibilidades: crear un ndice que permita valores duplicados o que no los permita. Una vez creado, podemos ver y manipular los ndice de una tabla haciendo clic sobre el botn ndices en la Ficha Diseo de las Herramientas de tabla. En el cuadro de dilogo ndices aparecen listados todos los ndices definidos en la tabla, junto con el campo sobre el que estn definidos y el criterio de ordenacin.

RELACIONES ENTRE LAS TABLAS

En una base de datos normalmente los datos no se almacenan en una sola tabla. Esto es debido a que hay que evitar la redundancia de datos (se repiten los mismos datos).

Ejemplo:

ALUMNOS dni 13111111A 20111111D 25111111X cdigoalumno A-0023 nombre apellidos telfono curso Fecha-inicio Nivel Profesor

Ana

Fernndez (942) 30Daz Gmez Gmez 30-30 (942) 5555-55 (942) 8989-89

Redes 10/11/2005 Alto Laura

B-8888

Luis

Redes 10/11/2005 Alto Laura

C-9987 Manuel Daz Gmez

Access 10/10/2005 Alto

Luis

Se observa cmo los datos sobre el curso de Access se repiten. Por lo tanto hay que dividir las tablas en dos, una para el objeto general alumno y otra para el objeto curso:

ALUMNOS dni 13111111A 20111111D 25111111X cdigoalumno A-0023 nombre apellidos telfono (942) 30-3030 (942) 55-5555 (942) 89-8989 cdigocurso C1-2

Ana

Fernndez Daz

B-8888

Luis

Gmez Gmez

C1-2

C-9987

Manuel Daz Gmez

C1-3

CURSOS cdigo-curso C1-2 C1-3 curso Redes Access Fecha-inicio 10/11/2005 10/10/2005 Nivel Alto Alto Profesor Laura Luis

Existen dos tipos de situaciones cuando relacionamos tablas:

1. Relacin de 1 a varios (1:N): un registro de la tabla madre (TM) se relaciona con varios registros de la tabla hija (TH). La clave ajena est en la tabla hija.

Ejemplo: cada alquiler un solo vdeo.

TH: Alquiler(#cdigo-alquiler, fecha-entrega, fecha-devolucin, sancin, cdigo-vdeo) TM: Vdeo(#cdigo-vdeo, ttulo, duracin, director)

Ejemplo: cada alumno un solo profesor (y claro, un profesor varios alumnos).

TH: Alumno(#cdigo-alumno, nombre, apellidos, direccin, telfono, situacin, cdigo-profesor) TM: Profesor(#cdigo-profesor, nombre, apellidos, fecha-nacimiento, direccin, dni, telfono)

2. Relacin de varios a varios (N:N): un registro de una tabla se relaciona con varios de otra y viceversa. En este caso se debe incluir otra tabla de detalle que actuar

de tabla hija de las dos tablas iniciales. La clave principal de esta tabla hija est formada por claves ajenas.

Ejemplo: cada alquiler puede contener varios vdeos.

TH: Detalle-alquiler(#cdigo-alquiler, #cdigo-vdeo, precio, descuento) TM: Alquiler(#cdigo-alquiler, fecha-entrega, fecha-devolucin, sancin) TM: Vdeo(#cdigo-vdeo, ttulo, duracin, director)

Ejemplo: cada alumno puede tener varios profesores (y claro, un profesor varios alumnos).

TH: Detalle-profesor(#cdigo-profesor, #cdigo-alumno) TM: Alumno(#cdigo-alumno, nombre, apellidos, direccin, telfono, situacin) TM: Profesor(#cdigo-profesor, nombre, apellidos, fecha-nacimiento, direccin, dni, telfono)

Вам также может понравиться