En este curso vamos a aprender como programar disparadores, procedimientos, y funciones en MySQL versión 5.0.27.

Manual del alumno

Este manual del alumno es una ayuda para el alumno, para tenga un recuerdo del curso. Este manual contiene un resumen de las materias que se van a estudiar durante el curso, pero el alumno debería de tomar notas personales para completas este manual.

En el CD del curso viene la documentación de MySQL en español, que completa este manual. La mayoria de los puntos de este manual están explicado de manera más completa en la documantación de MySQL en el CD.

Ejercicios prácticos

Para captar mejor la teoría, se harán muchos ejercicios con los alumnos, para probar la teoría y verificar la integración de la materia.

También, el alumno podrá copiar sus códigos en un disquete al fin del curso para llevarse, con fin de seguir la práctica en su hogar.

Requisitos para atender a este curso

  • Se requiere un conocimiento de base del lenguaje SQL.
  • Si el alumno tiene dificultades en un u otro capítulo, él debe sentirse libre de pedir explicaciones adicionales al profesor.

Historia de MySQL

Empezamos con la intención de usar mSQL para conectar a nuestras tablas utilizando nuestras propias rutinas rápidas de bajo nivel (ISAM). Sin embargo y tras algunas pruebas, llegamos a la conclusión que mSQL no era lo suficientemente rápido o flexible para nuestras necesidades. Esto provocó la creación de una nueva interfície SQL para nuestra base de datos pero casi con la misma interfície API que mSQL. Esta API fue diseñada para permitir código de terceras partes que fue escrito para poder usarse con mSQL para ser fácilmente portado para el uso con MySQL.

La derivación del nombre MySQL no está clara. Nuestro directorio base y un gran número de nuestras bibliotecas y herramientas han tenido el prefijo «my» por más de 10 años. Sin embargo, la hija del co-fundador Monty Widenius también se llama My. Cuál de los dos dió su nombre a MySQL todavía es un misterio, incluso para nosotros.

El nombre del delfín de MySQL (nuestro logo) es «Sakila», que fué elegido por los fundadores de MySQL AB de una gran lista de nombres sugerida por los usuarios en el concurso «Name the Dolphin» (ponle nombre al delfín). El nombre ganador fue enviado por Ambrose Twebaze, un desarrollador de software Open Source de Swaziland, África. Según Ambrose, el nombre femenino de Sakila tiene sus raíces en SiSwate, el idioma local de Swaziland. Sakila también es el nombre de una ciudad en Arusha, Tanzania, cerca del país de origen de Ambrose, Uganda.

Las principales características de MySQL

La siguiente lista describe algunas de las características más importantes del software de base de datos MySQL.

Interioridades y portabilidad

  •  Escrito en C y en C++
  •  Probado con un amplio rango de compiladores diferentes
  •  Funciona en diferentes plataformas.
  •  Usa GNU Automake, Autoconf, y Libtool para portabilidad.
  •  APIs disponibles para C, C++, Eiffel, Java, Perl, PHP, Python, Ruby, y Tcl.
  •  Uso completo de multi-threaded mediante threads del kernel. Pueden usarse fácilmente multiple CPUs si están disponibles.
  •  Proporciona sistemas de almacenamiento transaccionales y no transaccionales.
  •  Usa tablas en disco B-tree (MyISAM) muy rápidas con compresión de índice.
  •  Relativamente sencillo de añadir otro sistema de almacenamiento. Esto es útil si desea añadir una interfície SQL para una base de datos propia.
  •  Un sistema de reserva de memoria muy rápido basado en threads.
  •  Joins muy rápidos usando un multi-join de un paso optimizado.
  •  Tablas hash en memoria, que son usadas como tablas temporales.
  •  Las funciones SQL están implementadas usando una librería altamente optimizada y deben ser tan rápidas como sea posible. Normalmente no hay reserva de memoria tras toda la inicialización para consultas.
  •  El código MySQL se prueba con Purify (un detector de memoria perdida comercial) así como con Valgrind, una herramienta GPL (http://developer.kde.org/~sewardj/).
  • El servidor está disponible como un programa separado para usar en un entorno de red cliente/servidor. También está disponible como biblioteca y puede ser incrustado (linkado) en aplicaciones autónomas. Dichas aplicaciones pueden usarse por sí mismas o en entornos donde no hay red disponible.
Enlace de Descarga
Fuente: Cedric Simon, SolucionJava.com