|
|
|
|
Introducción.
|
Antes de leer esta información sería conveniente que leyeras por encima la página de bienvenida de Base de datos --1--.
He mejorado un poco Base de datos --1--:
- La clave principal de todas las tablas es autonumérica. MySQL gestiona automáticamente los valores de estos campos.
- He añadido dos campos a la tabla participantes, num_id que es clave principal y calificacion. La tabla participantes es una tabla puente, y como tal puede contener información muy expresiva, que con frecuencia se pasa por alto en los ejemplos de las obra de divulgación sobre bases de datos.
- He mejorado algo el diseño de las páginas aunque siguen siendo muy austeras, pero la información mostrada está mucho más clara. He procurado que no sea necesario cambiar de página para acceder a la información pertinente.
- Las claves principales de los registros a modificar o eliminar se obtienen mediante controles select que tienen origen de datos dinámico, (Mira aquí el código) de esta forma nos aseguramos de no borrar una fila padre que tiene filas hijo.
- Se evita la duplicación de registros sin necesidad de utilizar índices. (Mira aquí el código)
- Se pueden borrar varios registros de la tabla participantes con una sola instrucción SQL. Puede resultar muy útil para borrar todos los registros de la tabla participantes que sean hijos de una fila de la tabla formacion o todos los registros de la tabla participantes que sean hijos de una fila de la tabla personal. (Mira aquí el código)
- A pesar de que la versión MySQl que estamos utilizando no soporta integridad referencial, sí podemos borrar en cascada. Con un solo clic se puede borrar una fila padre y todas sus filas hijas (Mira aquí el código), y también con un solo clic, una fila abuelo, todas sus filas hijas y todas sus filas nietas. (Mira aquí el código).
|
|
Para acceder al menú que permite ver las tablas no es necesario identificarse como usuario. Para acceder al menú que permite hacer modificaciones, altas y bajas de registros deberás ponerte en contacto con el administrador para que te facilite un usuario y una palabra de paso. El administrador soy yo, estoy encantado de conocerte, no tengo ningún inconveniente en facilitarte el acceso al menú que te permite modificar, agregar y eliminar registros pero antes me gustaría conocerte. Puedes ponerte en contacto conmigo por correo [carlos@carloszcom.com] o por teléfono [667-45-39-37]. Te anticipo que la capacidad de almacenamiento disponible para esta base de datos es muy limitada.
|
|
Una consideración para terminar. Estoy convencido de que la fecha debe de ir siempre en la tabla puente. En este ejemplo, copiado de Petra Bilke, se trataría de la excepción que confirma la regla. En caso de que un mismo curso se repitiera a lo largo del tiempo, sí que sería incuestionable que los campos inicio_curso y finalizacion_curso fueran en la tabla puente.
|
|
Subir. >>>>>>
|
Esquema de la base de datos.
|
|
Por comodidad he utilizado la ventana de relaciones de Access.
|
|
|
Subir. >>>>>>
|
Definición de las tablas.
|
|
|
|
Subir. >>>>>>
|
Código fuente.
|
|
A continuación expongo un esquema de las páginas que utilizo para acceder a la base de datos con enlaces a sus correspondientes códigos. Las páginas sangradas más a la derecha responden a la petición de las páginas sangradas más a la izquierda. Verás que algunas páginas están repetidas, algunas de las que no lo están son muy parecidas entre sí. Estoy convencido de que se debe hacer un esquema parecido a este en algún momento al empezar a diseñar el sitio. Para comprender mejor el cometido de cada página busca una relación entre este esquema y el menú flotante. Disminuye al mínimo el tamaño de la fuente para ver el esquema completo sin tener que utilizar la barra de desplazamiento.
|
- Ver registros.
- Agregar registros.
- Eliminar / modificar registros.
- Eliminación masiva.
- include
|
|
Subir. >>>>>>
|