Objetivos y Temario

CURSO MySQL 5

 OBJETIVOS Este curso MySQL 5 se dirige a desarrolladores técnicos e ingenieros ya familiarizados con un lenguaje de programación y que desean desarrollar sus aplicaciones específicas usando este sistema de gestión de bases de datos relacionales. Presenta los mecanismos fundamentales de MySQL comunes de las versiones 5.1 a 5.6 así como las particularidades de su última versión, independientemente del lenguaje de programación usado. Se detalla la interfaz entre MySQL y los lenguajes Java y PHP, con varios ejemplos de código. Finalmente, basándose en las buenas prácticas, el curso presenta aspectos de seguridad y rendimiento, así como las problemáticas del despliegue en test y en producción de las aplicaciones.

 TEMARIO  Introducción a MySQL Introducción a las bases de datos relacionales Bases de datos y sistemas de gestión de bases de datos SGBD relacionales Características de un verdadero SGBDR Conociendo en profundidad el modelo relacional Modo transaccional Concepto de transacción Órdenes SQL que generan COMMIT implícitos Motivación y uso de restricciones de integridad MySQL Diferentes versiones de MySQL La versión libre de MySQL Las versiones de pago de MySQL Versiones empaquetadas de MySQL Diferentes plataformas y API Variedad de motores

 Instalación y toma de contacto 1. Instalar el software 1.1 Instalación del paquete WampServer para Windows 1.2 Instalación de un servidor MySQL autónomo en Windows 1.2.1 Requerimientos del sistema para Windows 1.2.2 Instalación de la versión 5.5 con Windows Installer 1.3 Instalación de un servidor MySQL en Linux (Ubuntu) 1.4 ¿ ¡Y si no se instala MySQL! ?

 2. Documentación y bases de datos de ejemplo 2.1 Documentación 2.2 Bases de datos y tablas de ejemplo 2.3 Inicio y pruebas 2.3.1 En Linux/Unix 2.3.2 En Windows Herramientas de desarrollo 1. Introducción 2. Cliente MySQL estándar

 3. phpMyAdmin 3.1 Introducción 3.2 Requerimientos 3.3 Funcionalidades principales 3.4 Introducción al uso de phpMyAdmin

 4. MySQL Workbench 4.1 Introducción a MySQL Workbench 4.2 Desarrollo SQL 4.2.1 Visualización y modificación de tablas en modo gráfico 4.2.2 Gestión de scripts SQL 4.2.3 Gestión de conexiones

www.grupocarman.com

OBJETIVOS Y TEMARIO

 5. Navicat 5.1 Introducción a Navicat 5.2 Funcionalidades principales de Navicat

 6. SQLYog 6.1 Introducción a SQLYog 6.2 Funcionalidades principales de SQLYog

 7. SQL Developer 7.1 Introducción a SQL Developer 7.2 Funcionalidades principales de SQL Developer 7.3 Configuración de SQL Developer para MySQL

 8. Tabla comparativa de herramientas cliente MySQL Primeros pasos 1. Conectarse 1.1 Parámetros de conexión 1.2 Conexión con el cliente MySQL estándar 1.3 Conexión automática 2. Gestionar esquemas y bases de datos 2.1 Introducción a los esquemas de datos 2.2 Cambiar el esquema actual 2.3 Crear/eliminar/modificar esquemas 3. Ejecutar comandos SQL 3.1 Ejecutar comandos interactivamente 3.2 Ejecutar scripts SQL

 Tipos de datos y tablas MySQL 1. Introducción 2. Tipos de datos 2.1 Los tipos numéricos 2.2 Los tipos temporales 2.3 Los tipos caracteres 3. Gestión de tablas 3.1 Creación de tablas 3.1.1 Sintaxis completa de creación de tablas 3.1.2 Creación de tablas sencillas 3.1.3 Creación de tablas con restricciones de integridad 3.2 Modificación de la estructura de las tablas 3.2.1 Renombrado de tabla y gestión de columnas 3.2.2 Gestión de restricciones de integridad con ALTER TABLE 3.3 Rellenando tablas con INSERT 3.4 Borrado de tablas 4. Características del almacenamiento de tablas 4.1 Los distintos motores de almacenamiento 4.2 Parámetros de almacenamiento

 Transferencia de datos 1. Introducción a la transferencia de datos 2. Extracción de datos a partir de MySQL 2.1 Exportación con MySQL Workbench 2.2 Exportación mediante phpMyAdmin 2.3 El comando mysqldump 3. Carga de datos en MySQL 3.1 Importación de datos con MySQL Workbench 3.2 Importación con phpMyAdmin 3.3 Importación por línea de comandos 3.3.1 El comando LOAD DATA INFILE 3.3.2 El comando mysqlimport

 Consulta de datos: SELECT 1. Introducción 2. Orden SELECT sencilla 2.1 Mostrar columnas o valores 2.2 Cláusula WHERE y condiciones lógicas 2.3 Ejercicios prácticos sobre SELECT sencillos 3. Utilizar operadores y expresiones 3.1 Operadores y expresiones

www.grupocarman.com

OBJETIVOS Y TEMARIO 3.2 Ejercicios prácticos de SELECT con operadores

 Uso de funciones nativas de SQL 1. Introducción 2. Funciones matemáticas 2.1 Presentación de las distintas funciones matemáticas 2.2 Ejercicios prácticos de funciones matemáticas 3. Funciones de tratamiento de cadenas de caracteres 3.1 Presentación de las diferentes funciones de tratamiento de cadenas 3.2 Ejercicios prácticos de cadenas de caracteres 4. Funciones de tratamiento de DATE 4.1 Presentación de las diferentes funciones DATE 4.2 Ejercicios prácticos de funciones DATE 5. Funciones de conversión

 Metadatos 1. La importancia de los metadatos 2. Visión general de los metadatos con MySQL Workbench 3. Los comandos SHOW 4. Las tablas de referencia estándar de MySQL 4.1 El esquema Information_schema 4.2 El resto de esquemas MySQL que contienen metadatos

 Otras órdenes SQL distintas de SELECT 1. Introducción 2. Órdenes SQL que modifican el contenido de las tablas 2.1 Orden INSERT 2.2 La orden REPLACE 2.3 La orden UPDATE 2.4 La orden DELETE 2.5 La orden TRUNCATE 3. Órdenes SQL que afectan a las transacciones y al bloqueo 3.1 Transacciones y subtransacciones 3.2 Bloqueo explícito de tablas 4. Otras órdenes SQL útiles para el desarrollo 4.1 Órdenes para configurar/conocer el entorno 4.1.1 DESCRIBE 4.1.2 Visualización de metadatos con SHOW 4.1.3 Gestión de variables 4.2 Órdenes de mantenimiento de sesiones 4.3 Órdenes de mantenimiento de tablas

 Subconsultas y JOINS 1. Introducción 2. Subconsultas 2.1 Operadores específicos ANY, IN y SOME 2.2 Subconsulta EXISTS 2.3 El operador ALL 2.4 Subconsultas multicolumna 2.5 Subconsultas correlacionadas (correlated subqueries) 2.6 Ejercicios prácticos sobre subconsultas 3. JOINS 3.1 JOIN Cruzada 3.2 Equijoin (Join de equivalencia) 3.3 Autojoin o join reflexiva 3.4 Joins externas 3.5 Algunos ejercicios prácticos sobre joins

 Procedimientos almacenados 1. La utilidad del lenguaje SQL ampliado 2. Presentación de los procedimientos almacenados 3. Gestión de procedimientos almacenados 3.1 Obtener información 3.2 Ejecutar procedimientos almacenados 3.3 Crear procedimientos almacenados 3.4 Eliminar y modificar procedimientos almacenados 3.5 Seguridad de acceso de procedimientos almacenados 3.5.1 Permisos relativos a la gestión de procedimientos almacenados 3.5.2 Contextos de seguridad 3.6 Triggers 4. Programación de procedimientos almacenados

www.grupocarman.com

OBJETIVOS Y TEMARIO 4.1 Comentarios 4.2 Bloque de instrucciones y variables 4.3 Gestión de variables 4.3.1 Gestión de variables en un procedimiento almacenado 4.3.2 Variables en modo comando (SQL) 4.4 Instrucciones de control 4.4.1 Condicionales 4.4.2 Bucles 4.5 Gestión de excepciones 4.5.1 Definiciones 4.5.2 Gestión de errores en MySQL 4.5.3 Declaración de condiciones 4.5.4 Declaración de gestores 4.5.5 Algunos ejemplos de gestión de errores 4.6 SELECT con cursores 4.6.1 Utilidad de los cursores 4.6.2 Principios de uso 4.6.3 Modelo general de código de un SELECT con cursor

 Seguridad y permisos 1. El sistema de permisos de MySQL 1.1 Los distintos permisos de MySQL 1.2 Diferentes niveles de permisos 1.3 Creación de usuarios 1.4 Algunas limitaciones del sistema de privilegios 1.5 El caso de los pseudoroles administrativos (administrative roles) 2. Información y metadatos de los privilegios 3. Gestión de privilegios con GRANT y REVOKE 3.1 Comandos GRANT y REVOKE 3.2 Diferentes niveles de GRANT

 MySQL y PHP 1. Introducción a PHP 1.1 ¿ Qué es PHP ? 1.2 Instalación de PHP 1.3 Extensiones de PHP 1.4 Utilidad de PHP con MySQL 2. Extensión mysql de PHP 2.1 Las funciones de la extensión mysql 2.2 Primer ejemplo de código: conectarse y actualizar 2.3 Segundo ejemplo de código: consultar filas 3. La extensión MySQLi de PHP 3.1 Presentación de funciones 3.2 Ejemplo de código sencillo con MySQLi 3.3 Ejemplo de código avanzado utilizando órdenes SQL con parámetros 4. La extensión PDO de MySQL 4.1 ¿ Qué es PDO ? 4.2 Utilización de PDO

 MySQL y Java 1. Introducción a Java 1.1 ¿ Qué es Java ? 1.2 Algunas características de la plataforma estándar 1.3 Instalación del JDK 1.3.1 Instalación en Ubuntu 1.3.2 Instalación en Windows 2. Presentación de JDBC 2.1 ¿ Qué es JDBC ? 2.2 Comprender JDBC 2.3 Drivers JDBC 3. Usar MySQL con JDBC 3.1 Instalación del driver JDBC para MySQL 3.1.1 Hacer referencia al jar en Eclipse 3.1.2 Hacer referencia al jar en NetBeans 3.1.3 Hacer referencia al jar en el intérprete de comandos 3.2 Establecer una conexión con una base de datos MySQL 3.3 Ejecutar una orden de selección 3.3.1 Primer ejemplo de ejecución y de tratamiento 3.3.2 Interfaz Statement 3.3.3 Interfaz ResultSet 3.4 Modificar, eliminar e insertar datos 3.4.1 Ejecutar una sentencia UPDATE o DELETE 3.4.2 Insertar un registro 3.5 Prepared statements 3.6 Ejecución de procedimientos y funciones almacenados

www.grupocarman.com

OBJETIVOS Y TEMARIO 3.6.1 Ejecución de un procedimiento que devuelve un ResultSet 3.6.2 Ejecución de un procedimiento con parámetros OUT 3.6.3 Ejecutar una función almacenada 3.7 Conclusión

 Complementos útiles y buenas prácticas 1. Introducción 2. El ciclo de vida del desarrollo de aplicaciones 2.1 Recordatorio de la tipología de bases de datos 2.2 Buenas prácticas relativas al uso de diferentes bases de datos empresariales 3. Otros objetos útiles para el desarrollador 3.1 Vistas 3.2 índices 4. Seguridad de aplicaciones 4.1 La seguridad desde la perspectiva del desarrollo 4.2 Principio del mínimo privilegio 4.3 Principales amenazas que afectan a las bases de datos 4.4 Inyección SQL 4.5 Copia de seguridad de tablas 5. Rendimiento de aplicaciones 5.1 Introducción 5.2 Optimización del modelo de datos 5.3 Indexación 5.4 Optimización del almacenamiento físico 5.4.1 Reorganización de datos en tablas 5.4.2 Particionado 5.4.3 Archivado 5.4.4 Reorganización de datos en los servidores 5.5 Optimización de sentencias SQL 5.5.1 Sentencias SQL preparadas 5.5.2 El comando Explain 5.5.3 El comando ANALYZE

www.grupocarman.com