Herramientas de usuario

Herramientas del sitio


bloque3:implementacion

Diseño Físico de Bases de Datos de Bases de Datos

Diseño Lógico de una BD

Una vez que hemos realizado el diseño lógico de datos tan solo debemos de aplicarlo a un SGBD concreto. Dependiendo del diseño físico escogido, tendremos un abanico de posibilidades en cuanto al software disponible. En nuestro caso hemos optado por un modelo relacional por lo que tendremos que escoger entre los SGBD relacionales disponibles. En este bloque nos centramos en Access, SGBD de la suite Office de Microsoft.

Alumno(#id, dni, cod_matricula, nombre, apellidos, fecha_nacimiento, dirección, foto)

Mediante un SGBD almacenaremos una base de datos, y dentro de la BD crearemos las tablas que contengan los campos indicados en el modelo relacional.

Diseño Físico de una BD

En el diseño físico de la base de datos, aparte de indicar los campos (columnas) de una tabla, vamos a definir muchos más aspectos de la tabla y de sus relaciones. Para ellos cada SGBD ofrece unas herramientas con las que indicar los tipos de datos de cada columna de la tabla, las restricciones o formato de los datos, el dominio de los datos, etc.

Una vez que tenemos el diseño físico de nuestra base de datos, procederemos a añadir datos, manipularlos y recuperarlos.

En este bloque nos centraremos en el diseño físico de bases de datos con el SGBD MS Access.

SGBD Access

Es el SGBD incluido en la suite Office de Microsoft. LibreOffice Base es otro programa similar incluido en otra suite ofimática. A diferencia de la mayoría de SGBD que emplean una arquitectura cliente-servidor, Access es una aplicación para escritorio.

Ventajas:

  • Interfaz gráfica que facilita la rápida elaboración gestión y análisi de bases de datos
  • Apto para casi cualquier nivel de experiencia previa
  • Uso sencillo y fácil de aprender
  • Facilita el diseño físico de bases de datos
  • Permite su uso en aplicaciones web gracias al soporte de productos de Microsoft

Limitaciones:

  • Menos estable que otros SGBD más potentes ante un grande volumen de datos
  • Rendimiento y capacidad limitada debido a que guarda toda la BD en un solo fichero
  • No permite el acceso simultáneo de usuarios sin necesidad de software especial
  • Descenso notable de rendimiento cuando más de un usuario accede de forma paralela
  • De pago y solo disponible para Windows

Crear una Bases de Datos

Para comenzar a trabajar con Access el primer paso va a ser crear una base de datos vacía. Una base de datos vacía no se trata de un fichero vacío: al crear una base de datos vacía se almacenan en ella algunos datos administrativos y objetos del sistema, inicialmente ocultos al usuario y programador.

El fichero de una base de datos Access tiene extensión accdb (Access DataBase).

Tablas

Crear Tabla

Una vez decididos los campos que necesitamos almacenar en la tabla, pasaremos a crear la tabla. Para ello seleccionaremos en la sección Tablas la opción Crear una nueva tabla en vista Diseño. Access nos mostrará un formulario para la definición de los campos. Esta ventana se denomina de diseño de tabla frente a la de vista de tabla que permitirá más adelante introducir los datos.

Tipos de Datos

El atributo autonumérico solo se debe usar para claves primarias simples. Si una clave primaria es además clave ajena, tampoco se usará el atributo autonumérico.

Tipo de datos Descripción
TextoPuede ser corto el cual tiene capacidad limitada o largo
NúmeroNúmeros enteros o reales de diferente capacidad
AutonuméricoNúmero entero que se autoincrementa para cada nuevo registro apropiado para claves primarias de una sola columna
Fecha/HoraPara datos de fechas, horas o compuestos
MonedaRepresenta valores monetarios
Si/NoRepresenta valores lógicos true/false
Objeto OLEObjeto de otra aplicación vinculado: sonido, imagen, video, etc.
HipervínculoVínculo a sitio web
Datos AdjuntosEmpleado para añadir archivos
CalculadoCampos calculados actualizados de forma automática
Asistente para búsquedaPermite una lista de valores obtenidos de otras tablas, o introducidos por nosotros

Propiedades y Restricciones de los datos

Además de seleccionar un tipo de datos para un campo de una tabla, en la sección inferior se permite configurar algunas propiedades o restricciones para cada campo:

Propiedad Descripción
Tamaño del campoPermite indicar el tamaño máximo de datos introducidos
FormatoEl formato en el que se muestra el valor de un campo
Máscara de entradaPermite forzar al usuario a introducir los datos siguiendo un formato concreto. Se usa para texto y fechas/horas
TítuloEn caso de que queramos que aparezca un nombre distinto al nombre de la columna
Valor por defecto El valor que contiene el campo en caso de que no se introduzca nada
Regla de validaciónCondición que debe cumplir el dato introducido. Por ejemplo “>=10”
Texto de ValidaciónMensaje que muestra Access al introducir un dato que incumpla la Regla de Validacion
RequeridoPara indicar que un campo es obligatorio; no puede quedar vacío
IndexadoAñadir un tipo de índice para mejorar las búsquedas sobre este campo, o indicar si se permiten valores repetidos

Máscara de Entrada de datos

Definen el modo en el que el usuario debe introducir los datos en un campo. Se usan principalmente para los campos de texto y de fecha/hora:

Carácter Descripción
0Dígito (0 a 9, entrada obligatoria; signos más [+] y menos [-] no permitidos).
9 Dígito o espacio (entrada no obligatoria; signos más y menos no permitidos).
# Dígito o espacio (entrada no obligatoria; las posiciones en blanco se convierten en espacios; se permiten los signos más y menos).
L Letra (A-Z, entrada obligatoria).
? Letra (A-Z, entrada opcional).
A Letra o dígito (entrada obligatoria).
a Letra o dígito (entrada opcional).
& Cualquier carácter o un espacio (entrada obligatoria).
C Cualquier carácter o un espacio (entrada opcional).
. , : ; - / Marcador de posición decimal y separadores de millares, fecha y hora. (El carácter utilizado dependerá de lo establecido al hacer doble clic en Configuración regional en el Panel de control de Windows).
< Convierte a minúsculas todos los caracteres que siguen.
> Convierte a mayúsculas todos los caracteres que siguen.
! Hace que la máscara de entrada se muestre de derecha a izquierda, en lugar de hacerlo de izquierda a derecha. Los caracteres escritos en la máscara siempre la rellenan de izquierda a derecha. Puede incluir el signo de exclamación en cualquier lugar de la máscara de entrada.
\ Hace que el carácter que viene a continuación se muestre como carácter literal. Se utiliza para presentar cualquiera de los caracteres detallados en esta tabla como caracteres literales (por ejemplo, \A se muestra sencillamente como A).
Contraseña Al establecer la propiedad Máscara de entrada (InputMask) a la palabra Contraseña, se crea un cuadro de texto de entrada de contraseña. Cualquier carácter escrito en este cuadro de texto se almacena como tal, pero se muestra como un asterisco (*).

Ejemplos de uso:

Máscara de entrada Ejemplos de valores
(000) 000-0000 (206) 555-0248
(999) 999-9999! (206) 555-0248
(000) AAA-AAAA (206) 555-TELE
>L????L?000L0 GREENGR339M3
>L0L 0L0 T2F 8M4
00000-999998115-3007
>L<?????????????? Elena
ISBN 0-&&&&&&&&&-0 ISBN 1-55615-507-7
>LL00000-0000 DB51392-0493

Clave Primaria

Para poder relacionar registros entre diferentes tablas es necesario identificar a cada registro de la tabla (fila) de forma inequívoca.

De este modo la clave primaria de una tabla pueden ser un campo o un conjunto de campos, cuya combinación no se puede repetir en ningún otro registro de la tabla. El tipo de datos autonumérico es un tipo diseñado para que actúe como clave primaria, ya que para cada nuevo registro siempre ofrecerá un valor distinto. Solo se debe aplicar en claves primarias de una sola columna: nunca para claves primarias compuestas por dos o más columnas.

Otros ejemplos de columnas que pueden ser clave primaria son: dni, matricula, codigo de SS, ISBN, etc.

Para definir una columna o conjunto de columnas como clave primaria en Access:

  • Seleccionar el campo/s a utilizar y pulsar sobre el botón Clave Principal en la barra de herramientas.
  • Seleccionar el campo/s y hacer clici derecho y seleccionar Clave Principal en el menú.
  • Para seleccionar varios campos, pulso en la barra de la izquierda y arrastro seleccionando los campos.

Guardar el Diseño

Después de introducir todos los campos y definir sus tipos y atributos, podremos pasar a utilizar la tabla, introduciendo, modificando y utilizando los datos que puede almacenar. Antes deberemos guardar la definición de la tabla, utilizando por ejemplo el icono “Guardar”. Access pedirá un nombre para la nueva tabla.

Relaciones entre Tablas

Access dispone de un potente generador de relaciones. Para iniciarlo y agregar tablas a la ventana de relaciones hay que hacer clic en el icono Relaciones. Accedo a esta sección desde la pestaña Herramientas de bases de datos.

Mostrar Relaciones

Si aún no se ha definido ninguna relación, aparecerá automáticamente el cuadro de diálogo Mostrar tabla. Si no aparece, en la ficha Diseño, haga clic en Mostrar tabla. En el cuadro de diálogo Mostrar tabla se muestran todas las tablas y consultas de la base de datos. Selecciona las tablas a relacionar y, a continuación, haga clic en Agregar. Al terminar de añadir tablas pulsar en Cerrar.

Relacionar tablas

Una relación entre tablas siempre se da entre una Clave Primaria y una Clave Ajena.

Para relacionar dos tablas debemos arrastrar el campo clave primaria y soltarlo en el campo clave ajena que le hace referencia de la tabla con la que queramos relacionarla. Sobre todo en las relaciones 1:1 es muy importante seguir ese orden: arrastramos la clave primaria y la soltamos en la clave ajena; no al revés.

En el momento que realizamos una relación, el campo que referencia a la clave primaria pasa a ser clave ajena.

En ese momento se nos desplegará una ventana Modificar relaciones en la que debemos asegurarnos que los campos a relacionar son los correctos. Además ofrece 3 opciones:

  • Exigir integridad referencial: activa o desactiva la integridad referencial entre los campos de las tablas seleccionadas. Las demás opciones no pueden activarse si no se activa ésta. Siempre marcamos esta opción.
  • Actualizar en cascada: si se activa, hace actualizaciones en cascada. Esto quiere decir que si modificamos el valor de una clave primaria, se modificarán los valores de las claves ajenas que le hacen referencia.
  • Eliminar en cascada: si se activa, hace borrados en cascada. Esto significa que si elimino un registro de una tabla cuya clave primaria es referenciada por otras tablas, también se eliminarán los registros de las tablas relacionadas.
Video: Diseño físico y Relaciones en Access
Video: Relaciones reflexivas en Access

Aspectos a tener en cuenta

  • Todo campo que trabaja como clave ajena no puede ser de tipo autonumérico, independientemente de que pueda ser al mismo tiempo clave primaria.
  • Todo campo que trabaja como clave ajena, debe ser del mismo tipo que la clave primaria con la que se relaciona. Esto quiere decir que si la clave primaria es por ejemplo “Texto corto” la clave ajena también, o si la clave primaria es autonumérico y en las propiedades es de tipo entero largo la clave ajena debe ser numérico de tipo entero largo.

Introducción de datos

Para introducir datos en una tabla debemos pasar al modo Vista Hoja de Datos. Podemos Introducir los datos directamente sobre la celda concreta, podemos pegar filas completas o grupos de filas.

También podemos introducir datos en una tabla a partir de los datos de otras tablas con una consulta de datos anexados.

Generar datos de prueba

Mediante la aplicacion web Mockaroo podemos generar datos de prueba para Access ya que permite exportar los datos en formato Excel. En este video del bloque 4 se explica el funcionamiento de algunos generadores de datos, mostrando el funcionamiento de Mockaroo.

Para ello crearemos la estructura de los datos dependiendo de las columnas de la tabla que deseamos poblar, y exportaremos los datos en formato Excel. Despues abrimos el fichero Excel, copiamos los datos y los pegamos en la tabla que corresponda.

Consultas

Se conocen como Consultas al tipo de operaciones de inserción, borrado, actualización o visualización de datos sobre una base de datos. Es la finalidad principal del uso de una base de datos.

En el SGBD Access las consultas se dividen en dos grupos: consultas de Acción (inserción, borrado, actualización) y consultas de Selección (búsqueda de datos que cumplan ciertas condiciones).

Consultas de acción

Son consultas que permiten modificar los datos de una tabla, incluso la creación de una nueva tabla con datos.

  • Consulta de eliminación: elimina registros de una o más tablas dependiendo de si cumplen ciertas condiciones.
  • Consulta de actualición: actualiza valores en los registros de una o más tablas dependiendo de unas condiciones.
  • Consulta de datos anexados (inserción): Agrega registros a una tabla a partir de otras tablas.
  • Consulta de creación de tabla: crea una nueva tabla a partir de los datos de otras tablas.
Video: Consultas de acción en Access

Consultas de selección

Se emplean para buscar y consultar datos contenidos en las tablas. Pueden realizarse sobre una sola tabla o que muestren datos de diferentes tablas relacionadas en sí.

Condiciones

Para restringir los datos que queremos que muestre una consulta podemos indicar una serie de criterios:

  • Valores constantes: Queremos que se muestren los datos en los que una columna tiene un valor concreto.

  • Operadores de comparación: No permite establecer criterios para valores de una columna en comparación con otros, mayor que un cierto valor, distinto a cierto valor, mayor a un fecha, etc.

  • Operadores lógicos: Podemos unir criterios mediante los operadores lógicos AND y OR: Y/O en Access. En caso de establecer criterios con el operador OR, también podemos plantearlo como se indica en la imagen de la derecha:

  • Valores nulos: Si queremos establecer como criterio si una columna tiene valor o no, usamos Es Nulo ó Es NoEs Nulo.

En el siguiente video se muestran algunos ejemplos de consultas de selección:

Video: Consultas de selección

© 2024 Fernando Valdeón

bloque3/implementacion.txt · Última modificación: 2022/01/21 23:00 por fernando