Como crear stored procedures en MySQL

Una de las nuevas características que posee MySql es la de crear procedimientos almacenados directamente en el servidor. Esto permite una mejor seguridad para las aplicaciones web sin mencionar la considerable mejora de respuesta del cliente ya que las consultas son realizadas por el servidor, en el servidor. A diferencia de llamar la consultad desde nuestros archivos php.

Otro buen aporte es la de poder actualizar las consultas en los stored precedures directamente lo cual permite que cualesquiera sean las webs que utilicen las mismas consultas del mismo servidor puedan actualizar los cambios sin siquiera los archivos php, el cliente, ni mucho menos los usuarios lo noten.

Vamos a crear un simple store procedure y la forma de como llamarlo para su utilización.  A nuestro SP vamos a llamarlo h1n1

Primero, eliminamos cualquier SP almacenado anteriormente con este nombre para evitar warnings:

DROP PROCEDURE IF EXISTS h1n1;

Luego, las lineas mágicas de creación. Estas son muy similares a las utilizadas por MSSQL para aquellos que ya tienen experiencia con esta:

CREATE PROCEDURE h1n1()
BEGIN
SELECT CURDATE();
END

Listo, este SP nos desplegará la fecha actual mediante la instruccion SELECT CURDATE();, Esta podemos cambiarla por cualquier tipo de consulta que deseemos, como por ejemplo, una consulta a una tabla, etc.

Una vez listo nuestro SP, procedemos a ejecutarlo. A diferencia de MSSQL donde los SP se ejecutan con la instrucción EXEC o EXECUTE, en MySql lo hacemos con el comando CALL:

CALL h1n1();

Esto es todo, para mas información sobre esta nueva característica visita la web de MySql (http://www.mysql.com)