OBJETIVOS
- Identificar los sistemas gestores de bases de datos más utilizados en entornos Web
- Verificar la integración de los sistemas gestores de bases de datos con el lenguaje de guiones de servidor
- Configurar en el lenguaje de guiones la conexión para el acceso al sistema gestor de base de datos
- Crear bases de datos y tablas en el gestor utilizando el lenguaje de guiones
- Obtener y actualizar la información almacenada en bases de datos
- Aplicar criterios de seguridad en el acceso de los usuarios
- Verificar el funcionamiento y el rendimiento del sistema
CONTENIDOS
Conceptuales
- Sistemas gestores de bases de datos. Tipos
- Bases de datos
- Tablas, campos y atributos
- Tipos de datos
- Relaciones entre tablas
- Claves: primaria y foránea
- DDL- Lenguaje para la definición de datos: creación y definición de bases de datos
- DML- Lenguaje para la manipulación de datos: consultas, altas, bajas y modificaciones
- Importación y exportación de datos
Procedimentales
- Identificación de los sistemas gestores de bases de datos más utilizados en entornos web
- Evaluación mediante criterios como la funcionalidad, licencia de uso o calidad
- Integración de los sistemas gestores de bases de datos con el lenguaje de guiones de servidor
- Configuración del lenguaje de guiones para la conexión con la base de datos
- Creación de bases de datos y tablas en el gestor utilizando el lenguaje de guiones y sentencias SQL
- Manipulación de la información almacenada en bases de datos desde una página web: consultas, inserciones, actualizaciones y borrados
- Verificación de la información
- Control de acceso de los usuarios
- Verificación del funcionamiento y pruebas de rendimiento
- Configuración de los mecanismos de seguridad
- Elaboración de la documentación técnica necesaria
Actitudinales
- Planificación metódica de las tareas a realizar en el desarrollo del proyecto web
- Profesionalidad y responsabilidad en la consecución de los objetivos finales de la tarea en los plazos marcados
- Buena predisposición ante los errores y posibles problemas
- Autonomía para la búsqueda de soluciones
- Iniciativa para aportar ideas, colaboración con el grupo y respeto en la comunicación
ORIENTACIONES METODOLÓGICAS
- Se justificará la elección de MySQL como herramienta de trabajo del curso
- Se mostrará el uso de un interfaz gráfico y se crearán usuarios con distintos permisos
- Cada alumna o alumno reproducirá dichas creaciones en su equipo y creará nuevos usuarios con determinados perfiles propuestos como ejercicio
- Se hará uso del interfaz gráfico para crear una nueva base de datos, a la que agregará tablas y datos. Hará hincapié en el hecho de que el sistema muestra en cada caso el equivalente en SQL de las acciones realizadas. Esto permitirá llevar a cabo estas mismas tareas desde PHP. Además, el profesor o la profesora aprovechará para repasar las sentencias SQL que vayan apareciendo
- Los alumnos y las alumnas deberán crear sus propias bases de datos
- Se irá realizando consultas de las bases de datos aplicando distintos criterios y recordando cómo se realizarían directamente mediante instrucciones SQL
- Los alumnos y las alumnas irán reproduciendo en su equipo lo que se les va explicando. Para finalizar, se les propondrán ejercicios de consultas sencillas
- Se explicará al grupo la forma de trabajar a nivel de base de datos, de tabla o puramente de datos y se procederá a realizar ejemplos de exportación en distintos formatos. En este momento se debe especificar al alumnado en qué formato se exportarán las bases de datos para entregar los ejercicios
- Cada alumno o alumna creará su propia base de datos y le pasará el fichero a un compañero o una compañera
- Se explicará, con la ayuda de la documentación del lenguaje, las dos formas de trabajar con bases de datos desde PHP: capas abstractas y específicas, indicando las ventajas y desventajas de las mismas
- Se justificará la elección de la capa específica de MySQL y dará una visión general de la misma, mostrando la documentación necesaria para las actividades siguientes
- Se explicará, mediante ejemplos, cómo realizar la conexión con la base de datos y enviar sentencias SQL que permitan insertar, actualizar y dar de baja determinados registros. Si se considera necesario, se alternará el uso del lenguaje con el del interfaz gráfico para ver cuáles son las sentencias implicadas
- Cada alumno o alumna realizará labores de manipulación de datos en una base de datos que le será proporcionada por el o la docente y deberá importar a su sistema
- Se indicarán las distintas situaciones de error que se pueden dar en la actividad anterior: fallo de la conexión, intento de borrado o actualización de registros inexistentes, falta de permiso para crear nuevos registros, inserción de registros que no están en el formato adecuado…
- Seguidamente, se mostrará la forma de detectar esos errores e interrumpir el procesado normal de código, dando al usuario o usuaria un mensaje de error significativo que le informe de la naturaleza del error en cuestión y le permita actuar en consecuencia
- Los alumnos y las alumnas deberán modificar el código de la actividad anterior para que sea robusto y resistente a fallos
- Se explicará, mediante un ejemplo, el proceso completo para la realización de una consulta, explicando la forma de extraer información y datos de un objeto de tipo recurso. Elaborará, también, un listado tipo en forma de tabla con distintos formatos en las filas pares e impares para facilitar la lectura
- Cada alumno o alumna realizará listados totales o parciales de alguna de las bases de datos usadas hasta ahora
- Se mostrará a los alumnos y las alumnas un ejemplo sencillo de inserción y edición de datos mediante formularios
- A continuación se les propondrá un ejercicio similar con otra base de datos
- Se mostrará un listado de ejemplo en el que al pulsar sobre un registro determinado se podrá ver el registro completo en forma de ficha; además, cada registro tendrá a su derecha un enlace o botón que permitan acceder a un formulario de edición, también habrá un único botón de inserción de nuevos registros que llame a un formulario
- Se insistirá en la necesidad de dar un aspecto homogéneo a las distintas páginas implicadas, compartiendo hojas de estilo
- Los alumnos y las alumnas deberán desarrollar un ejercicio libre similar al presentado
- Se explicará los dos tipos de ataque más comunes: inyección de SQL y cross site scripting
- Se explicará las técnicas habituales para protegerse de ellos
- Cada alumno o alumna intentará proteger su trabajo y atacar el de un compañero o compañera
TEMPORALIZACIÓN
El tiempo estimado para la adquisición de las capacidades propuestas deberá ser de al menos de 20 sesiones
CRITERIOS DE EVALUACIÓN
- Se han identificado los sistemas gestores de bases de datos más utilizados en entornos web
- Se ha verificado la integración de los sistemas gestores de bases de datos con el lenguaje de guiones de servidor
- Se ha configurado en el lenguaje de guiones la conexión para el acceso al sistema gestor de base de datos
- Se han creado bases de datos y tablas en el gestor utilizando el lenguaje de guiones
- Se ha obtenido y actualizado la información almacenada en bases de datos
- Se han aplicado criterios de seguridad en el acceso de los usuarios
- Se ha verificado el funcionamiento y el rendimiento del sistema