DISEÑO Y GESTIÓN DE BASES DE DATOS − Prácticas − Filemaker Pro 5.5 es la herramienta que se va a emplear. Sirve para trabajar tanto las bases de datos documentales, como las bases de datos relacionales. Se puede descargar de la página www2.filemaker.fr_spain. Existe una versión más actual para descargar pero varía mucho de la de clase por lo que no es recomendable descargarla. Filemaker tiene una ventaja frente a Knosys y es que guarda automáticamente la información por lo que no tienes que estar dando continuamente al botón guardar. Lo más importante de este programa es que para filemaker un archivo es una base de datos. PASOS PARA CREAR UNA BASE DE DATOS CON FILEMAKER 1.− Entras en Filemaker y aparece la pantalla Nueva base de datos y en ella aparece: Crear un archivo nuevo usando una plantilla (no lo vamos a usar) Crear un nuevo archivo vacío (es la que vamos a utilizar al principio) Abrir un archivo existente (es el que usaremos cuando tengamos uno guardado) 2.− Sale una pantalla en la que se van a gestionar y guardar todo lo que hagamos. Primero tenemos que crear una carpeta con nuestro nombre para tener todo organizado. Creamos un fichero en nuestra carpeta llamado prueba. 3.− Vamos a crear campos, cada uno de un tipo (normalmente de texto) y con alguna opción que explicará algo de éste, alguna particularidad, etc. Todos los campos son indizables por lo que se podrán recuperar, excepto el campo contenedor que incluirá imágenes, sonidos, etc. A cada campo le daremos el nombre que queramos y el tipo (normalmente en las bases de datos documentales usaremos el tipo texto) y le damos a CREAR. Es importante que cambiemos los tipos de campo cuando lo necesitemos porque si escribimos una fecha y le decimos que sea tipo texto, cuando la busquemos por el campo fecha no aparecerá. NOMBRE DEL CAMPO . TIPO texto contenedor numérico cálculo fecha sumario hora global Cuando tengamos todos los campos creados, le damos a HECHO y saldrá la base de datos. Creamos el primer documento de la base de datos rellenando los campos que hayamos puesto. Una vez hecho, 1 le decimos que queremos hacer un nuevo registro REGISTRO − NUEVO REGISTRO (o pulsamos el icono correspondiente). Esto hay que hacerlo cada vez que queramos crear un nuevo registro. Filemaker tiene cuatro modos de trabajo: • Visualizar: Se usa para crear registros (por defecto la base de datos se abre en este modo). Si quiero modificar algún registro también se trabaja en este campo. • Buscar: Se usan los mismos campos que tengamos y se busca por el campo que queramos (el de autor, título, etc.). En este modo a la izquierda hay un botón que pone símbolos que son una serie de operadores que podemos usar. Para buscar en una base de datos documental algún registro, hay que hacer alguna configuración porque si no actúa como si fuera una base de datos relacional (busca campo a campo). Para salir de la búsqueda hay que pinchar en REGISTRO − MOSTRAR TODOS LOS REGISTROS y así volvemos a estar en el modo visualizar. • Presentación: Sirve para cambiar el aspecto de la base de datos. Cuando creo una base de datos nueva tiene un aspecto estándar que podemos modificar con esta opción. En este modo no podemos escribir en los campos y tampoco pueden aparecer campos ni en la cabecera, ni en el pie de página. En todos los registros aparecerán la cabecera y el pie de página pero el cuerpo, lógicamente, será distinto. • Vista previa: Sirve para imprimir cualquier presentación que tengamos. Vamos a crear una nueva presentación quitándole dos campos de trabajo y de contenido. Pasos: • Cambiar el modo de trabajo de visualizar a presentación. • Presentación − Nueva presentación • Ponemos un nuevo nombre si queremos. En este caso le ponemos el nombre usuarios y elegimos también el tipo que queremos de presentación. Cuando lo elijamos, pinchamos en siguiente. • Le quitamos dos campos de trabajo y nos quedamos sólo con Autor − Título − Área de edición (quitamos resumen y palabras clave) y pulsamos en siguiente. • Elegimos por defecto. Si nos arrepentimos de haber quitado algún campo, puedo darle a CAMPO (a la izquierda), selecciono el campo que quiero volver a incluir, lo arrastro al cuerpo y ya aparece. Vuelvo al modo visualizar para ver el nuevo aspecto de esta presentación. Así tenemos dos presentaciones (la primera que hicimos y la de usuarios) pero la base de datos es la misma. Creamos otra presentación llamada listado y elegimos el tipo de presentación lista. Pinchamos en siguiente y luego le decimos que lo organice en columnas. Luego otra vez en siguiente y después seleccionamos los campos que queremos y la ordenación que queremos (en este caso por el campo Autor). Pinchamos en siguiente y podemos hacer algún cambio en la cabecera si queremos. A continuación nos sale una pantalla en la que seleccionaremos no crear guión y, en la siguiente, le damos a ver informe en modo presentación. Actividades: 1.− Crear una nueva presentación llamada Búsqueda Sencilla donde sólo aparezcan los campos Autor y Título. Pasos: ♦ Cambiar el modo de trabajo de visualizar a presentación ♦ Presentación − Nueva presentación ♦ Le ponemos de nombre Búsqueda sencilla y le damos a que sea de tipo estándar 2 ♦ Ponemos sólo los campos Autor y Título ♦ Le damos en por defecto 2.− A nuestra base de datos llamada Prueba le añadimos un campo para incluir una imagen en un campo de tipo contenedor. Pasos: ♦ Archivo − Definir campos ♦ Creamos un campo con el nombre que queramos y le decimos que sea de tipo contenedor. ♦ Buscamos una imagen y la guardamos en el mismo sitio donde tengamos guardada la base de datos. ♦ Insertamos la imagen en el campo como imagen NO como objeto. Crear campos nuevos o modificarlos Para crear un campo o modificarlo hay que ir a ARCHIVO − DEFINIR CAMPOS. Desde aquí podemos cambiar el orden de los campos, pero el cambio que hagamos aparecerá a partir de una nueva presentación (habría que poner el modo presentación y después pinchar en presentación − nueva presentación. También podemos cambiar el tipo de campo (de texto a numérico, etc.) Pasos: ♦ Archivo − Definir campos ♦ Marcamos el campo que queramos modificar ♦ Cambiamos el tipo de campo ♦ Le damos a GUARDAR y después a HECHO Poner una imagen como logo o decoración Para poder insertar una imagen como adorno, primero hay que ir a modo presentación. Una vez allí insertamos la imagen en la cabecera o en el pie de página. Si hacemos esto, la imagen saldrá en todos los registros de esta presentación pero NO en el resto de presentaciones de la base de datos. Para poner una imagen diferente en cada documento, primero hay que ir a modo presentación. Una vez allí insertamos la imagen en el cuerpo de cada registro en un campo contenedor que creemos. Si lo que queremos es que la imagen salga en todas las presentaciones, tenemos que insertar la imagen que queramos en la cabecera de todas las presentaciones que tengamos en la base de datos. Hacer una copia de la base de datos ♦ Archivo − Guardar una copia como ♦ Le damos el nombre que queramos 3 ♦ Seleccionamos la ubicación en la que queremos que se guarde. ♦ Le damos a GUARDAR Crear un botón Si queremos llevar al usuario de una presentación a otra hay que crear un botón por cada presentación que tengamos. Pasos para crearlo: ♦ Cambiamos del modo visualizar al modo presentación ♦ En el lado de la izquierda de la pantalla hay un botón que simula un botón con un dedo. Pinchamos en él. Arrastramos el cursor y hacemos el botón donde queramos. ♦ Saldrá una ventana donde elegiremos ir a la presentación. ♦ En especificar seleccionamos la presentación a la que queremos que nos lleve el botón. ♦ Le das el nombre que quieras al botón ♦ Cambiamos a modo visualizar y le damos al botón que hemos creado. Desde ahí nos remitirá a la presentación que hayamos elegido. También podemos crear un botón que, en vez de llevarnos a otra presentación, le demos luna orden llamada modo buscar. Este modo lo podemos seleccionar en la ventana donde se crean los botones. Actividad: Crear un botón en cada presentación que nos lleve a la siguiente y a la anterior. Cambiar el nombre o eliminar una presentación Si queremos cambiarle el nombre a una presentación le damos a PRESENTACIÓN − AJUSTAR PRESENTACIÓN y ahí le cambiamos el nombre. Si queremos eliminar una presentación, le damos al icono de borrar presentación. Crear una presentación en blanco (PARA EL TRABAJO) Hay que poner en la página en blanco el nombre de la base de datos, cuántos registros tiene, cuál es su contenido y la cronología. En el pie de página tiene que figurar el nombre y apellidos de los integrantes del grupo y su dirección de correo electrónico. Dentro de esa presentación, crearemos un botón que nos lleve a otra presentación en blanco que tendremos que crear, donde escribiremos los campos que tenemos en la base de datos y de qué tipo son. Pasos para hacer una presentación en blanco: ♦ Cambiar el modo de trabajo a modo presentación 4 ♦ Pinchar en PRESENTACIÓN − NUEVA PRESENTACIÓN ♦ Le damos un nombre a la presentación y elegimos como tipo de presentación presentación en blanco. Podemos hacer que la dirección de corre electrónico que pongamos sea un enlace para poder mandarle un e−mail. para ello tenemos que tener configurado el programa Outlook y poner el protocolo: mailto: dirección de correo En nuestra base de datos tenemos que hacer un campo URL para insertar la dirección URL de las páginas de donde saquemos la información. Para poder poner esa dirección es necesario poner el protocolo: http://..... Dentro de la presentación donde escribimos los nombres de los campos y su tipo, creamos otro botón que nos lleve a otra presentación en blanco que tendremos que crear llamada cómo buscar o cualquier otro nombre. En esta presentación escribiremos un resumen de cómo se busca en FileMaker. Esta información la sacamos de la Ayuda del mismo programa y la copiamos en la presentación. Para importar registros de una base a otra ♦ Abrir la base de datos vacía ♦ Le das a ARCHIVO − IMPORTAR ♦ Compruebas la equivalencia de los campos en las dos bases. Puedes seleccionar los campos que quiere que se importen. ♦ Le das a IMPORTAR y tardará un poco Habilidades del software FileMaker 1.− Ordenar registros Lo primero que hay que hacer es situarse en la base de datos que queremos que se ordene. Después le damos a REGISTROS − ORDENAR. Le podemos decir que lo ordene por el campo que queramos. Para ello marcamos el campo que queramos y le damos a MOVER y por último a ORDENAR. 2.− Definir entradas automáticas Suele servir para saber en qué hora y en qué fecha se crea el registro. Esta entrada automática la pone el sistema automáticamente y no el que diseñe la base de datos. Pasos a seguir: ♦ Le damos a ARCHIVO − DEFINIR CAMPO ♦ Vemos que el campo fecha sea de tipo fecha ♦ Lo marcamos y le damos a OPCIONES ♦ Marcamos El / La Fecha de creación o también podemos marcar Fecha de modificación. ♦ Le damos a ACEPTAR y después a HECHO Este cambio aparecerá a partir de que lo hagamos pero los registros que ya había en la base de datos no se modificarán. 5 3.− Lista de valores Nos sirve para hacer tablas por ejemplo de editoriales (si no son muchas) o de cualquier cosa para que el usuario marque la opción que le convenga. Para crear una lista de valores asociada a un campo se siguen estos pasos: ♦ ARCHIVO − DEFINIR LISTA DE VALORES ♦ Le damos a Nueva ♦ Le ponemos un nombre (normalmente le ponemos el nombre del campo al que queremos que se asocie). ♦ Si marcamos usar valores personalizados tendremos que escribir los valores que queramos que aparezcan. ♦ Si queremos que nos ponga los valores automáticamente le damos a usar valores del campo ♦ Elegimos el campo del que queremos que seleccione la lista de valores. ♦ Le decimos OK y ya aparece el nombre de la lista de valores que hemos creado. ♦ Ahora le tenemos que indicar al software que queremos asociar la lista a un campo. ♦ Vamos a modo presentación y pinchamos en el campo al que queremos asociar la lista. ♦ Si le damos con el botón derecho dentro del contenido del campo, nos sale una lista donde tenemos que dar a Formato de campo. ♦ Ahí le decimos que sea una lista desplegable y ponemos la lista que hemos creado antes y le damos a OK ♦ Si lo hemos hecho bien, en modo visualizar si pinchamos dentro del campo nos saldrá la lista que le hayamos asignado. 4.− Acceso Le damos a ARCHIVO − PRIVILEGIOS DE ACCESO − CONTRASEÑAS. Podemos hacer que sólo nosotros accedamos a la base de datos o dejar que todo el mundo pueda hacer modificaciones. Hacer guiones ♦ GUIONES − SCRIPMAKER ♦ Aparece una ventana para darle un nombre al guión. ♦ Le damos un nombre y pinchamos en CREAR ♦ A la derecha va a aparecer el guión que te da FileMaker por defecto, pero como no nos interesa le damos a BORRAR ♦ Tendremos que trabajar con la lista de la izquierda para crear un guión. 6 ♦ Si queremos que se haga un guión de un solo paso para que nos lleve a Internet, tendremos que ir a la parte del final de la lista donde aparece el apartado Miscelánea. Ahí, marcamos la opción Abrir URL y le damos a MOVER. ♦ Todas las órdenes que le vamos dando se colocan en la columna de la derecha. Justo al lado de la orden aparece un doble corchete. Si le damos ahí dos veces sale la pantalla: Especificar URL. Ahí le decimos a qué página web queremos que nos lleve. Ponemos primero el protocolo http:// y a continuación la dirección web. ♦ Le damos a OK ♦ Dentro del doble corchete aparecerá la página que le hayamos dicho. ♦ Pinchamos en HECHO. ♦ Tenemos que asociar este guión a un botón o a un campo de la base. En este caso, lo asociaremos a un botón. ♦ Cambiamos a modo presentación. ♦ Creamos un botón y en la pantalla especificar botón le tenemos que decir ejecutar guión. ♦ En la parte de la derecha podemos especificar el guión que queremos que se asocie al botón. ♦ Seleccionamos el guión que queremos y le damos a OK ♦ Ponemos un nombre al botón. ♦ En modo visualizar si pinchamos en el botón, nos llevará a la web que le hemos indicado. Si no queremos que abra una URL sino un fichero de Word se hace todo igual, es decir, le damos a Abrir URL pero en vez de poner http://.... hay que poner file://nombredelfichero.extensión Para asociar un guión a un campo, nos vamos a modo presentación y ahí pinchamos con el botón derecho en un campo y seleccionamos especificar botón. Ahí le decimos ejecutar guión y le decimos qué guión queremos asociar. Cómo crear un campo de cálculo Este campo puede medir o comparar Horas, texto o fechas. Pasos para hacerlo: ♦ ARCHIVO − DEFINIR CAMPOS ♦ Creamos un campo que se llame Todos los campos ♦ Le decimos que sea de tipo cálculo y le damos a CREAR ♦ En este momento nos sale una pantalla que se llama Especificar cálculo ♦ En la columna de la izquierda aparecen los campos que tengo en la base. En la columna de la derecha hay una lista de órdenes donde podemos decirle que calcule horas, fechas o texto. 7 ♦ Aparecen también unos botones para poder incorporarlos en la parte de abajo. Podemos incorporar & / x + etc. A la derecha de los botones, donde pone operadores tenemos los operadores booleanos y una serie de operadores de relación (= > <.) ♦ En la parte de abajo pone el resultado del cálculo es y aparecen las opciones numérico, texto, fecha, hora y contenedor. Si queremos que relacione varios campos tenemos que decirle que sea texto. ♦ Le damos a OK Práctica • Crear el campo todos los campos. Para ello seguimos los pasos de arriba. • Crear un guión de varios pasos que vaya a la presentación donde esté sólo el campo Todos los campos; que se sitúe en ese campo; que vaya al modo buscar; que realice la búsqueda y haga una pausa; y que se vuelva a ir a la presentación inicial donde aparecen todos los campos. Para hacer este guión, seguimos estos pasos: ♦ GUIONES − SCRIPTMAKER ♦ Le damos un nombre ♦ Borramos lo que te da el sistema por defecto y ponemos nuestros pasos: • Ir a la presentación Todos los campos • Ir al campo [Todos los campos] • Modo Buscar [Pausa] • Ejecutar búsqueda [ ] • Ir a la presentación Presentación estándar ♦ Le damos a HECHO • Asociamos el guión que hemos creado a un botón que nos lleve a la presentación donde aparezca el campo Todos los campos. Para hacer este botón seguimos los pasos del apartado Crear un guión • Cuando hagamos una búsqueda le damos a CONTINUAR para que nos salgan los resultados. Cómo indicar al usuario el uso de operadores booleanos La forma que tiene FileMaker de hacer un AND es poner el término que tu quieras buscar y a continuación otro término y por defecto el sistema realizará un AND sin tener que escribir este operador. Le das a buscar y te salen los documentos que haya encontrado. Para poder ver todos los registros de la base otra vez, hay que dar a REGISTROS − MOSTRAR TODOS LOS REGISTROS. Si queremos hacer un OR tenemos que indicar el término y luego hay que pinchar en PETICIONES − AÑADIR NUEVA PETICIÓN. Después tecleamos el otro término que queramos buscar y le damos a buscar. En el modo buscar, a la izquierda, aparece Símbolos donde aparecen una serie de símbolos que sirven para realizar rangos en la búsqueda, poner los símbolos mayor que y menor que, etc. Estos operadores se denominan relacionales y van a servir, sobre todo, para automatizar actividades en bases de datos relacionales. FileMaker no utiliza el operador booleano NOT 8 BASES DE DATOS RELACIONALES Una base de datos relacional es aquella que gestiona actividades. Está compuesta por ENTIDADES y RELACIONES. Por ejemplo, una base de datos relacional de una biblioteca estaría formada por las siguientes bases de datos: Es una entidad que tiene sentido por sí misma. Se identifica por una forma sustantiva Las entidades se representan por medio de rectángulos. Es una entidad que tiene sentido por sí misma. Se identifica por una forma sustantiva. Se representa por medio de un rectángulo. Es una base de datos de relación o de gestión de actividades. Se identifica por una forma verbal. Se representa por medio de un rombo. Pasos para crear una base de datos relacional de una biblioteca • Crear la base de datos Libros. • Crear la base de datos Usuarios. • Crear la base de datos Préstamo. • Es necesario señala la dirección en la que se realiza la relación. Normalmente la relación será desde la base de datos de relación a las entidades. Por ejemplo: • Necesitamos saber cómo vamos a relacionar las bases de datos. Para relacionarlas, es necesario crear CAMPOS CLAVE. Un campo clave es un campo que va a identificar de manera inequívoca a cada uno de los registros de la base de datos. Por ejemplo, en la base de datos Libros, el campo clave va a ser el ISBN, que no será un campo numérico. En la base de datos Usuarios, el campo clave será el DNI / Carnet. La base de datos Préstamo también necesita un campo clave. Este campo tiene que distinguir un registro de otro de préstamo. Podría ser por ejemplo un número secuencial llamado Código de Préstamo. Los campos clave cumplen en cada base la función de IDENTIFICADOR PRINCIPAL (no se va a repetir nunca; va a ser único). • Necesitamos que la base de datos Préstamo tenga campos para relacionar las bases de datos. Estos campos serán: ISBN y DNI. En la base de datos Préstamo tendremos los campos Código de Préstamo, ISBN y DNI, pero sólo el campo Código de Préstamo es único y no se puede repetir. ISBN y DNI sí se podrán repetir pero los pondremos porque son CAMPOS CLAVE COINCIDENTES (sirven para relacionar la base de datos Libros con el préstamo y la base de datos Usuarios con el préstamo). ISBN y DNI no serán identificadores principales en la base de datos Préstamo. La razón de que en esta base de datos se puedan repetir es porque se van a realizar distintos préstamos. 9 El esquema de los campos en las bases de datos quedaría así: ♦ En la base de datos Libros, el campo ISBN Son identificadores principales ♦ En la base de datos Usuarios, el campo DNI ♦ En la base de datos Préstamo, el campo ISBN No son identificadores principales ♦ En la base de datos Préstamo, el campo DNI Es identificador ♦ En la base de datos Préstamo, el campo Código de Préstamo principal Definir un campo como Autointroducción ARCHIVO − DEFINIR CAMPOS. Seleccionamos el campo que queremos que sea de autointroducción y le damos a OPCIONES. En la pestaña Autointroducir hay que señalar Número secuencial. El valor que le demos saldrá en los nuevos registros que hagamos. En los que ya tenemos habrá que poner el número de forma manual. Definir las relaciones Las relaciones casi siempre se definen desde la base de datos de gestión a la entidad. En nuestro caso, haremos las siguientes relaciones: Base de datos Préstamo Base de datos Libros marcamos ISBN Base de datos Préstamo Base de datos Usuarios marcamos Nº usuario Desde la base de datos Préstamo pinchamos en ARCHIVO − DEFINIR RELACIONES. Nos sale una pantalla para que seleccionemos la base de datos con la que queremos relacionar el préstamo. Después sale una pantalla donde aparecen dos columnas: una con los campos de la base de datos préstamo y otra con los campos de la base de datos que hayamos elegido. Ahí tendremos que marcar el campo clave coincidente en las dos columnas. A continuación, en esa misma pantalla, señalamos la opción Permitir la creación de registros seleccionados. Tenemos que darle un nombre claro a la relación en la misma pantalla. Finalmente le damos a OK y luego a HECHO. Después habrá que hacer lo mismo con la otra base de datos que queremos relacionar. Para ver si la relación que hemos establecido ha funcionado, vamos a modo Presentación y pinchamos en Campo y sin soltar, arrastramos el campo a donde queramos. Una vez hecho esto, nos sale la pantalla Especificar campo y seleccionamos Préstamo de libros. Una vez ahí marcamos el campo Autor y le damos a OK y luego hacemos lo mismo con el campo Título. 10 Finalmente hacemos lo mismo con Préstamo a usuarios y seleccionamos los campos Nombre y Teléfono. De esta manera podremos ver esa información sin salir de la base de datos Préstamo. EJERCICIOS 1.− Desde la base de datos Préstamo tenemos que crear un botón que, cuando se preste un libro, me lleve al registro del libro. También tenemos que crear otro botón que nos lleve al usuario al que se lo prestamos. Para hacer los botones se necesita utilizar la definición de la relación y darle una orden para que nos lleve directamente al libro prestado y al usuario al que se lo prestamos. Creamos en la base de datos Préstamo un botón llamado Datos del libro. Para que el botón haga esto tenemos que crear el botón e ir a Desplazamiento − Ir al registro relacionado. Una vez ahí, en Especificar, ponemos Préstamo de Libros. Después marcamos en Mostrar sólo registros relacionados. Finalmente le damos a OK. Hacemos lo mismo pero seleccionando Préstamo a usuarios. Este botón se llamará Datos del usuario. 2.− Desde la base de datos Libros, queremos crear un botón que nos permita ir a Préstamo siempre que el libro esté prestado. Si el libro no está prestado, el botón no hará nada; si está prestado, tendrá que abrirse el registro de fecha, nombre prestado. Para que esto funcione, hay que definir una relación contraria a la que hemos hecho antes, es decir, hay que hacer una relación desde la base de datos libros a la de préstamo. Este botón tendrá que tener asociada una función. El botón se llamará Prestado. Hacemos la relación a la inversa: desde la base de datos Libros definimos una relación nueva a la base de datos Préstamo. Seleccionamos el campo coincidente (ISBN); marcamos en Permitir la creación de registros seleccionados y le damos a OK y, finalmente a HECHO. Creamos un botón llamado Prestado − Desplazamiento − Ir al registro seleccionado − en Especificar indicamos BD PRESTAMO y le damos a OK. Conclusión: el botón nos llevará a la ficha de los libros prestados. Cuando se trate de un libro que no aparezca en la base de datos Préstamo, el botón no nos llevará a ningún sitio. Crear la base de datos Registros Si tenemos varios ejemplares de un libro, lo que prestamos ya no son ISBN sino registros. Por tanto, tendremos que crear una base de datos nueva llamada Registros que servirá para controlar todos los ejemplares de un mismo título de la biblioteca. La relación que valdrá será Préstamo − Número de registro. No vale la relación Préstamo − ISBN La base de datos Registros tendrá dos campos: ♦ Número de registro (campo clave identificador principal) − Numérico ♦ ISBN (que se podrá repetir) Relacionar la base de datos Registros con la base de datos Libros teniendo como campo clave coincidente el ISBN. Relacionar la base de datos Registros con la base de datos Préstamo teniendo como campo clave coincidente el Número de Registro (que habrá que crearlo en la base de datos Préstamo). 11 De este modo, tendremos que eliminar todas las relaciones y hacerlas de nuevo. Supuestos prácticos para el examen ¿Por qué razón yo no presto ISBN y presto registros? ¿Por qué no pongo ISBN como campo clave coincidente y sí Nº registro? Si pongo ISBN como campo clave coincidente y tengo más de un ejemplar, tendría que repetir la ficha tantas veces como ejemplares tuviera y eso sería una base de datos mal diseñada porque ocuparía más espacio en el disco. Esto se resuelve creando una base de datos de registros que necesitará sólo dos campos: ♦ Campo clave identificador principal (numérico y de autointroducción) Nº registro ♦ Campo clave coincidente con la base de datos Libros ISBN Esta sí serviría para gestionar el préstamo de manera que prestaremos registros y no ISBN. Debido a esto, en la base de datos Préstamo tendremos que eliminar el campo ISBN y crear el campo Nº registro (campo clave coincidente) para hacer la relación con la base de datos Registro. Identificación de la base de datos Entidad Base de datos intermedia que permitirá relacionar el préstamo con el catálogo. Entidad La base de datos Registros (intermedia entre entidad y relación) se puede considerar entidad pero tendrá funciones para gestionar el registro y hacer préstamos. En la base de datos Registros, el Nº registro será campo clave identificador principal (porque es el que manda). En esta misma base, el ISBN será campo clave coincidente (porque solo define la relación). Campos de las cuatro bases de datos CATALOGO: Contiene la descripción física de los libros de la biblioteca, así como el análisis y representación se su contenido. Es una entidad. ♦ ISBN (campo clave identificador principal) ♦ Autor ♦ Título ♦ Área de edición Tipo texto ♦ Signatura ♦ Tema ♦ Palabras clave 12 USUARIOS: Contiene los datos personales de los usuarios de la biblioteca. Es una entidad. ♦ Nº de usuario (campo clave identificador principal) Numérico y de autointroducción ♦ Nombre y Apellidos ♦ Dirección ♦ Teléfono Tipo texto ♦ E−mail REGISTRO: Contiene el registro individualizado de cada ejemplar de la biblioteca para su control y disponibilidad para el préstamo. Es una entidad, pero también contiene funciones de gestión (base de datos comodín). ♦ Nº registro (campo clave identificador principal) Numérico y de autointroducción ♦ ISBN de tipo texto PRÉSTAMO: Contiene el control y gestión de los libros (ejemplares) que presta la biblioteca. Es una base de datos de relación. ♦ Código de préstamo (campo clave identificador principal) Numérico y d autointroducc. ♦ Referencia de préstamo de tipo texto ♦ Nº registro (campo clave coincidente con la base de datos Registro) Numérico ♦ Nº usuario (campo clave coincidente con la base de datos Usuarios) Numérico ♦ Fecha de préstamo de tipo fecha y autointroducción ♦ Fecha de devolución de tipo cálculo (resultado una fecha) ♦ Estado de tipo texto y con una lista de valores En la base de datos Libros tendremos que eliminar la relación con Préstamo y quitar el botón Prestado. En la base de datos Préstamo tendremos que eliminar el botón Datos del libro y lo sustituiremos por el botón Datos del registro. Campo calculado Es un campo que se llama así porque aprovecho la definición de relación entre registro y libros (con el campo clave coincidente ISBN) y me traigo el campo ISBN de esa relación lo que permitirá aprovechar espacio y no tener que teclear el ISBN. En alguna ocasión, me permitirá hacer algunas tareas. Pasos para crearlo: (primero habrá que establecer una relación entre libros y registro con el campo clave coincidente ISBN) ♦ Archivo − Definir campos ♦ Creamos el campo ISBN ♦ Le decimos que sea de tipo cálculo ♦ En la pantalla de cálculo, tenemos que indicar la relación de la base de datos registro. ♦ Seleccionamos el ISBN de la relación Préstamo de registros. Pinchamos dos veces en él y nos saldrá en la parte inferior: Préstamo de registros :: ISBN ♦ El resultado será Texto. Portales Se crea dentro de una base de datos y es una ventana que permite ver información de otra base de datos. Ofrece información agrupada de campos concretos. Pasos para crear un portal: ♦ Ir al modo Presentación 13 ♦ Hay un icono en la izquierda que permite dibujar portales ♦ Cuando pinchamos y dibujamos el portal, nos sale la pantalla Ajustar portal. ♦ En mostrar registros desde tenemos que marcar Registro. ♦ Ponemos las filas que queremos que tenga el portal. Marcamos mostrar la barra de desplazamiento vertical. Le damos a OK ♦ Del botón campo, llevamos el cursor a la primera fila del portal. Busco la relación Registro y elijo el campo Nº registro. Hacemos lo mismo con los campos ISBN y Estado. En la base de datos Registros, hay que hacer un campo que sea Estado. Este campo tiene que ser de tipo texto, con una lista de valores asociada. Lo que pongamos en este campo, nos saldrá en el portal de la base de datos Libros. Tipos de diseño de una base de datos Para diseñar una base de datos, normalmente hay que realizar dos tipos de diseño: ♦ Diseño lógico y conceptual: abarca los siguientes aspectos: ◊ Enunciar y presentar de manera detallada el problema. ◊ Identificar los archivos (bases de datos) que son necesarios para gestionar esas actividades. ◊ Identificar las entidades, las bases de datos de gestión o relación y las relaciones que se definen entre ellas. ◊ Representación gráfica de esas actividades que se van a gestionar. ◊ Presentar la estructura de la base de datos, es decir, indicar los campos, qué tipo de campos son, para qué sirve cada uno de ellos, si son identificadores, si son de relación (Nº registro, Usuarios), o si son sólo de información (Estado, Fecha). ♦ Diseño físico de la base de datos: se realiza cuando, una vez planteado el diseño anterior, se puede pensar en cómo queremos que se comporten los datos, qué queremos que haga la base de datos y de qué manera. Para estas dos cosas, es necesario crear pequeñas programaciones, es decir, utilizar script (guiones) para indicarle a la base de datos qué funciones tiene que realizar. Para resolver el problema de ¿Cómo prestar?, como mínimo hay que crear cinco guiones y subguiones. Antes de hacer esto, es necesario que exista mucha información en las bases de datos En la base de datos Libros hay que crear un botón llamado Préstamo que tenga asociado el siguiente guión: • Va al campo ISBN y selecciona la información • Copia esa información • Va a la base de datos Registros • Indica que aparezca en el modo buscar • El cursor parpadea en el ISBN • Pega la información que ha copiado antes • Indica los registros que ha encontrado con ese ISBN y nos dice el estado de cada registro • Selecciona la información del campo Nº registro • Copia esa información • Va a la base de datos Préstamo • Nuevo registro • Se marca el campo Nº registro y pega la información que había copiado 14 • El cursor parpadea en el campo Nº usuario Los guiones deben quedar así: PRIMER GUIÓN llamado Préstamo 1 en la base de datos Libros • Ir al campo [Seleccionar / ejecutar, ISBN] • Pausar / reanudar guión [ ] • Seleccionar todo • Pausar / reanudar guión [ ] • Copiar [Seleccionar] • Pausar / reanudar guión [ ] • Ejecutar guión [Subguiones, Externo: préstamo2.fp5] SEGUNDO GUIÓN llamado Préstamo 2 en la base de datos Registro • Modo buscar [Restaurar] • Pausar / reanudar guión [ ] • Ir al campo [Seleccionar / ejecutar, ISBN] • Pausar / reanudar guión [ ] • Pegar [Seleccionar] • Pausar / reanudar guión [ ] • Ejecutar búsqueda [ ] • Pausar / reanudar guión [ ] • Cambiar búsqueda anterior • Pausar / reanudar guión [ ] • Ir al campo [Estado de Registro] • Pausar / reanudar guión [ ] • Insertar texto [Seleccionar, Disponible] • Pausar / reanudar guión [ ] • Ejecutar búsqueda [ ] • Pausar / reanudar guión [ ] • Ir al campo [Seleccionar / ejecutar, Nº registro] • Pausar / reanudar guión [ ] • Seleccionar todo • Pausar / reanudar guión [ ] • Copiar [Seleccionar] • Ejecutar guión [Subguiones, Externo: préstamo3.fp5] TERCER GUIÓN llamado Préstamo 3 en la base de datos Préstamo • Nuevo Registro / petición • Pausar / reanudar guión [ ] • Ir al campo [Seleccionar / ejecutar, Nº registro] • Pausar / reanudar guión [ ] • Pegar [Seleccionar] • Pausar / reanudar guión [ ] • Ir al campo [Nº usuario] En la base de datos Préstamo hay que crear un botón llamado Estado que tiene que tener un guión para que, si pinchamos en él, se cambie automáticamente el estado del libro en todas las bases de datos. 15 Para hacer esto hay que crear dos guiones: PRIMER GUIÓN llamado Guión estado en la base de datos Préstamo • Insertar Texto [Estado, Prestado] • Ir al campo [Seleccionar / ejecutar, Nº registro] • Seleccionar todo • Copiar [Seleccionar] • Ejecutar guión [Subguiones, Externo: Bdregistro.fp5] SEGUNDO GUIÓN llamado Guión estado 1 en la base de datos Registro • Ir al campo [Nº registro] • Pegar [Seleccionar] • Ir al campo [Estado] • Seleccionar todo • Borrar [Seleccionar] • Insertar texto [Estado, Prestado] Otras relaciones Se pueden establecer relaciones entre una base de datos de gestión y ella misma. Esta relación se llamará Relación Interna. Vale para crear en otra representación un portal que te muestre todos los datos que tengan el mismo número en un campo que le indiquemos. El portal se debe dibujar en función de la relación interna que hayamos establecido. Ejemplo: se podría establecer una relación interna entre una base de datos Ventas − Pedidos y ella misma para poder hacer un portal que sirva de factura y que muestre todos los ISBN y la cantidad que hemos vendido a un cliente determinado. Relación Interna Relacionamos un archivo con él mismo, es decir, relacionamos una base de datos con ella misma. Por ejemplo: ♦ Ventas − Pedidos con Ventas − Pedidos ♦ Adquisiciones con Adquisiciones ¿Para qué sirven?: ♦ Creación de portales ♦ Dentro de un portal, una relación interna permite ver agrupada toda la información relacionada con un campo (ese campo suele ser un campo clave). Relación interna: Campo Clave REF. PEDIDO* (*) Cuando lo que queremos ver en un portal es toda la información relacionada con la misma Ref. Pedido. Por ejemplo: Todos los libros que pide un cliente con la misma referencia de pedido y que irá en la misma factura. Relación interna: Campo Clave REF. DE ADQUISICIÓN* (*) Cuando lo que queremos ver en un portal es toda la información relacionada con la misma referencia de 16 adquisición. Por ejemplo: Todos los libros que pide la librería con la misma referencia de adquisición. Es importante que todos los campos que se muestren en el portal estén tomados de la relación interna y no de otras bases de datos. Configuración de portales ♦ En muchos casos, cuando se crea un portal, éste debe configurarse utilizando una relación interna. ♦ Lo que varía en la configuración de portales es el campo clave de la relación interna. 18 LIBROS USUARIOS Préstamo LIBROS Préstamo USUARIOS Préstamo USUARIOS Registro CATÁLOGO Ventas − Pedidos Ventas − Pedidos Adquisiciones Adquisiciones 17