|
1.1. Crear base de datos
- Crea una nueva base de datos llamada "agenda".
- Deja las opciones que están seleccionadas por defecto.
1.2. Crear tablas
Una vez creada la base de datos, vamos a crear las tablas necesarias.
Tabla: CONTACTO
- Crea la tabla de contactos de la agenda electrónica con los siguientes campos y propiedades:
Campo |
Tipo |
Longitud |
Descripción |
Id_contacto |
Integer [INTEGER] |
Dejar por defecto |
Identificador (clave primaria) |
Nombre |
Texto[VARCHAR] |
25 |
Nombre del contacto |
Apellidos |
Texto [VARCHAR] |
50 |
Apellidos del contacto |
DNI |
Texto [VARCHAR] |
10 |
DNI |
Telefono |
Texto [VARCHAR] |
12 |
Teléfono |
Ecorreo |
Texto [VARCHAR] |
50 |
Correo electrónico |
Fechacumple |
Fecha [DATE] |
Dejar por defecto |
Fecha de cumpleaños |
Direccion |
Texto [VARCHAR] |
50 |
Dirección |
Poblacion |
Texto [VARCHAR] |
50 |
Población |
Provincia |
Texto [VARCHAR] |
20 |
Provincia |
Codpostal |
Texto [VARCHAR] |
5 |
Código postal |
Categoria |
Texto [VARCHAR] |
20 |
Código de categoría (clasificación) |
Foto |
Imagen [LONGVARBINARY] |
Dejar por defecto |
Foto del contacto |
Observaciones |
Nota [LONGVARCHAR] |
Dejar por defecto |
Observaciones varias |
- Fija como clave primaria el campo "Id_contacto".
- Guarda la tabla con el nombre "CONTACTO".
Tabla: CATEGORIA
- Introduce los campos que se indican a continuación:
Campo |
Tipo |
Longitud |
Descripción |
Categoria |
Texto[VARCHAR] |
20 |
Código de la categoría de clasificación de contactos |
Descripción |
Texto [VARCHAR] |
50 |
Descripción de la categoría |
- Fija como clave primaria el campo "Categoria".
- Guarda la tabla con el nombre "CATEGORIA".
Tabla: PROVINCIA
- Introduce los campos que se indican a continuación:
Campo |
Tipo |
Longitud |
Descripción |
Provincia |
Texto[VARCHAR] |
20 |
Provincia |
- Fija como clave primaria el campo "Provincia".
- Guarda la tabla con el nombre "PROVINCIA".
1.3. Establecer propiedades de campos
Tabla CONTACTO. Formato de datos
- Campo “Fechacumple”. Establece un nuevo formato: elige la categoría Fecha, formato DD/MM/AAAA.
Tabla CONTACTO. Valor requerido
- Campo “Nombre”. Establece el campo como requerido.
- Campo “Apellidos”. Establece el campo como requerido.
- Campo “Categoria”. Establece el campo como requerido.
De este modo, para cada registro será obligatorio introducir el nombre, apellidos y código de categoría del contacto.
1.4. Edición de tablas
Tabla CONTACTO. Tipo de datos Autonumérico
- Campo “Id_contacto”. Establece la propiedad Valor Automático a Sí.
A partir de ahora, cada vez que introduzcamos una nueva fila en la tabla CONTACTO, el campo Id_contacto tomará el mayor valor asignado hasta ese momento incrementado en 1.
1.5. Relaciones
Tras el diseño de tablas, podemos comprobar que la tabla de contactos tiene campos en común con la tabla de categorías y la tabla de provincias. Por tanto, debemos relacionar las tablas mediante esos campos en común.
Los números indican la cardinalidad. Es decir:
Relación categoría-contacto
- (N) Dada una categoría, puede haber muchos contactos que pertenezcan a ella.
- (1) Dado un contacto, sólo puede pertenecer a una categoría de clasificación.
Relación categoría-provincia
- (N) Dada una provincia, puede tener muchos contactos que vivan en ella.
- (1) Dado un contacto, sólo puede vivir en una provincia.
1.6. Establecer una relación uno a muchos (1:N)
En nuestro caso, en la tabla CONTACTO tenemos un campo “Categoria” que hace referencia a la clasificación del contacto: amigo, familia, conocido, etc. Por tanto, la columna debe ser del mismo tipo de datos que la columna que sea clave primaria en la otra tabla y los valores que podrá contener será cualquiera de los valores que tome la clave primaria en dicha tabla.
Del mismo modo, en la tabla CONTACTO tenemos un campo “Provincia” que hace referencia a la provincia en que vive nuestro contacto. |
|
- Relaciona las tablas CONTACTO, CATEGORIA y PROVINCIA mediante los campos correspondientes:
1.7. Crear formularios
Formulario: FCONTACTO
- Crea un formulario llamado FCONTACTO con el asistente:
- Tabla: CONTACTO
- Que contenga todos los campos de la tabla
- La organización será En columnas - Etiquetas a la izquierda
- El estilo el que más te guste
Formulario: FCATEGORIA
- Crea un formulario llamado FCATEGORIA con el asistente:
- Tabla: CATEGORIA
- Que contenga todos los campos de la tabla
- La organización será Hoja de datos
- El estilo el que más te guste
Formulario: FPROVINCIA
- Crea un formulario llamado FPROVINCIA con el asistente:
- Tabla: PROVINCIA
- Que contenga todos los campos de la tabla
- La organización será Hoja de datos
- El estilo el que más te guste
1.8. Introducción de datos
Categorías
- Abre el formulario FCATEGORIA.
- Introduce los siguientes datos:
- Guarda los cambios y cierra el formulario.
Provincias
- Abre el formulario FPROVINCIA.
- Introduce los siguientes datos:
- Guarda los cambios y cierra el formulario.
1.9. Diseño de formularios
Vamos a cambiar aspectos estéticos del diseño del formulario FCONTACTO para que se muestre mejor la fotografía y las observaciones de cada contacto.
Campo “Foto”
La foto de los contactos se muestra pequeña y no se puede apreciar bien.
- Edita el formulario FCONTACTO.
- Campo “Foto”. Muévelo a la derecha del formulario. Hazlo más grande.
Campo “Observaciones”
Vamos a asegurarnos que las observaciones de cada contacto se puedan leer bien.
- Campo “Observaciones”. Muévelo a la izquierda del formulario.
- Haz doble clic en el campo “Observaciones”.
- Cambia la propiedad Alineación vert al valor “Superior”.
- Cambia la propiedad Varias líneas al valor “Sí”.
- Comprueba que ahora se visualiza todo correctamente.
Color de fondo
Vamos cambiar el color de fondo del formulario de contactos.
- Ve al menú , pestaña Área. Cambia el color por el que quieras.
- Guarda los cambios en el diseño del formulario.
- Comprueba que ahora se visualiza el color seleccionado.
1.10. Campos con formato
La AIPGPDP (Asociación de Internautas Para Garantizar la Privacidad de los Datos Personales) quiere una máscara de entrada para la fecha de cumpleaños.
Campo “Fecha_cumple”
Debe aparecer en formato día, mes y año “dd/mm/aaaa”: día, mes y año (4 cifras) en formato numérico.
- Edita el formulario FCONTACTO.
- Pulsa sobre el icono de la barra izquierda llamado .
- Haz clic en el icono .
- Dibuja el campo en el formulario y haz doble clic sobre él.
- En la pestaña General, elige la propiedad Marco, pon el valor “Vista 3D”.
- En la propiedad Formato de fecha, selecciona la máscara DD/MM/YYYY. En la propiedad Control de formato, pon el valor Sí. Ahora sólo dejará introducir la fecha con este formato.
- Selecciona la pestaña Datos. Despliega la lista y elige el campo “Fechacumple”.
- Cierra la ventana de Propiedades.
Ahora enlazamos el nuevo campo con un campo de nuestra base de datos.
- Haz clic en el campo antiguo y pulsa la tecla Supr.
- Coloca el nuevo campo en su lugar.
- Pulsa sobre el icono de la barra izquierda llamado .
- En el formulario, dibuja una etiqueta a la izquierda del nuevo campo. Haz doble clic sobre la etiqueta. En la propiedad Título escribe el texto “Fecha cumpleaños”.
- Cierra el formulario.
- Guarda los cambios.
1.11. Listas de datos
Vamos a modificar el formulario para que los campos de categoría y provincia sean listas desplegables con los valores que hemos introducido anteriormente en las tablas.
Campo “Categoría”
- Edita el formulario FCONTACTO.
- Pulsa sobre el icono de la barra izquierda llamado.
- Dibuja el nuevo control a la derecha del campo categoría.
Aparecerá el asistente para guiarnos en el proceso. Seguimos los pasos correspondientes.
- Elige la tabla CATEGORIA. Haz clic en Siguiente.
- Selecciona el campo “Categoria”. Haz clic en Siguiente.
- Elige el campo “Categoria” tanto a la izquierda como a la derecha. Haz clic en Finalizar.
Acabamos de crear una lista que mostrará todas las categorías de contactos de la agenda. Ahora vamos a eliminar el campo “Categoria” antiguo.
- Haz clic en el campo “categoria” y pulsa la tecla Supr.
- Sitúa la lista en el mismo lugar que estaba el campo antiguo. Haz más ancha la lista.
- Pulsa sobre el icono de la barra izquierda llamado . En el formulario, dibuja una etiqueta a la izquierda de la lista de categorías.
- Haz doble clic sobre la etiqueta. En la propiedad Título escribe el texto “Categoría”.
Campo “Provincia”
- Crea la lista desplegable, pero en este caso con la tabla PROVINCIA.
- Borra el campo antiguo.
- Añade la etiqueta con el texto “Provincia”.
- Cierra el formulario.
1.12. Introducción de datos
- Abre el formulario FCONTACTO mediante doble clic.
- Introduce datos de diferentes contactos en la agenda. Puede introducirse los datos que se desee.
- Cierra el formulario.
- Ve a la tabla CONTACTO. Ábrela y comprueba que se han guardado todos los datos. Por ejemplo:
Vamos a introducir las fotos de nuestros contactos en la agenda.
- Descarga 5 fotos de Internet que quieras. Procura que las fotos no ocupen mucho espacio para no superar el límite de tamaño a la hora de subir al portal la base de datos.
- Abre el formulario FCONTACTO mediante doble clic.
- Mediante el formulario, introduce una foto para cada contacto de la agenda.
1.13. Orden de tabulación
Vamos a cambiar el orden de tabulación para que sea consecutivo.
- Edita el formulario FCONTACTO.
Primero vamos a renombrar todos los campos para que sepamos cuál es cuál.
- Ve al campo “Id_contacto”. Haz doble clic sobre él. En la propiedad Nombre, escribe el texto “Id_contacto”. Cierra las propiedades.
- Repite el mismo proceso con cada una de las etiquetas, poniendo el nombre del campo correspondiente.
Después establecemos el orden de tabulación correcto.
- En la barra de herramientas inferior, haz clic en el icono .
- Mueve los distintos campos para que quede el orden correcto. Utiliza los botones para desplazar hacia arriba o hacia abajo. Por ejemplo:
- Guarda los cambios y cierra el formulario.
- Haz doble clic en el formulario. Comprueba que ahora está correcto el orden de tabulación. Para ello, pasa con la tecla tabulador de un campo a otro.
- Cierra el formulario.
1.14. Integridad referencial
En la relación que hemos definido se impide que cualquier registro relacionado sea modificado o eliminado. Esta propiedad es lo que se conoce como integridad referencial.
Una vez establecida una relación, comprobaremos que es correcta. Para ello sólo tenemos que intentar realizar alguna operación no permitida y ver que se cumple la integridad referencial.
Caso 1. Borrar una categoría a la que pertenecen contactos
- Ve a la tabla CATEGORIA.
- Elimina una categoría que tenga contactos asociados, por ejemplo “Familia”.
- Guarda los cambios.
- Comprueba que Base nos muestra un mensaje de error porque estamos borrando una categoría a la que pertenecen contactos relacionados en la tabla CONTACTO.
- Pulsa Aceptar. Deshaz los cambios.
- Cierra la tabla CATEGORIA.
También podemos probar desde el formulario.
- Ve al formulario FCATEGORIA y haz doble clic sobre él.
- Elimina una categoría que tenga contactos asociados, por ejemplo “Familia”. Responde Sí a la pregunta que se formula. Guarda los cambios.
- Por ejemplo:
Caso 2. Borrar una provincia en la que viven contactos
- Ve a la tabla PROVINCIA.
- Elimina una provincia que tenga contactos asociados, por ejemplo Madrid o Valencia.
- Guarda los cambios.
- Comprueba que Base nos muestra un mensaje de error porque estamos borrando una provincia en la que viven contactos relacionados en la tabla CONTACTO.
- Pulsa Aceptar. Deshaz los cambios.
- Cierra la tabla PROVINCIA.
También podemos probar desde el formulario.
- Ve al formulario FPROVINCIA y haz doble clic sobre él.
- Elimina una provincia que tenga contactos asociados, por ejemplo Madrid o Valencia. Responde Sí a la pregunta que se formula. Guarda los cambios.
- Por ejemplo:
1.15. Consultas
- Crea una consulta llamada "C_contactos_resumen":
- Tabla: CONTACTO
- Que contenga los campos "Apellidos", "Nombre", "Telefono", "Ecorreo" y "Categoria"
- En el apartado Alias de cada campo escribe "Apellidos", "Nombre", "Teléfono", "Correo electrónico" y "Categoría"
- Que esté ordenada ascendentemente por el campo "Apellidos" y "Nombre"
- Crea una consulta llamada "CP_contacto_prov", que nos devuelva los datos de los contactos de una provincia determinada:
- Que contenga los campos "Apellidos", "Nombre", "Telefono", "Ecorreo", "Categoria" y "Provincia"
- En el apartado Alias de cada campo escribe "Apellidos", "Nombre", "Teléfono", "Correo electrónico", "Categoría" y "Provincia"
- Que esté ordenada ascendentemente por el campo "Apellidos" y "Nombre"
- Que pida la provincia mediante parámetro
- Crea una consulta llamada "CP_fecha_categ", que nos devuelva los datos de los contactos que hayan nacido después de una fecha determinada y que sean de una categoría determinada:
- Que contenga los campos "Apellidos", "Nombre", "Telefono", "Ecorreo", "Categoria" y "Provincia"
- En el apartado Alias de cada campo escribe "Apellidos", "Nombre", "Teléfono", "Correo electrónico", "Categoría" y "Provincia"
- Que esté ordenada ascendentemente por el campo "Apellidos" y "Nombre"
- Que utilice un operador de comparación para la fecha
- Que pida la categoría mediante parámetro
- Crea una consulta llamada CG_PROVINCIA, que muestre el nombre de cada provincia almacenada y el total de contactos que tenemos de cada provincia:
- Que contenga los campos "Provincia" e "Id_contacto"
- En el apartado Alias de cada campo escribe "Provincia" y "Total contactos"
- Que esté ordenada ascendentemente por el campo "Provincia"
- Que agrupe por provincia y cuente por "Id_contacto"
1.16. Subformularios
Crear subformulario SFPROVINCIA
- Crea un subformulario de nombre SFPROVINCIA haciendo que, cada vez que nos movemos entre los distintos registros, nos muestre la información de todos los contactos pertenecientes a esa provincia.
- Guarda los cambios.
- Cierra el formulario.
Formulario FCONTACTO. Añadir subformulario
- Modifica el formulario FCONTACTO para hacerlo más intuitivo, de forma que cada vez que nos movemos entre los distintos registros, nos muestre la descripción de la categoría a la que pertenece un contacto.
- Guarda los cambios.
- Cierra el formulario.
Guardar la base de datos
- Guarda los cambios en la base de datos.
- Cierra la base de datos "agenda".
Subir el fichero
- Sube la base de datos "agenda" a la plataforma.
|