Para ello crearemos primero el esqueleto del cuerpo en un script de SQL que llamaremos spVenta.sql, al procedimiento almacenado que crearemos en éste lo llamaremos vendeProducto. De tal forma que nuestro script quedará así:
USE prueba;
DELIMITER //
CREATE PROCEDURE vendeProducto
BEGIN
END
//
Expliquemos de qué se trata, la primera línea contiene la sentencia USE prueba; lo que le indica a MySQL que utilice la base de datos llamada prueba, notarán que es la única línea que es cerrada con un punto y coma, éste signo de puntuación (;) es utilizado de manera predeterminada por MySQL para separar sentencias o bloques de código.
La segunda línea DELIMITER // le indica a MySQL que substituya al punto y coma (;) como separador de código y en su lugar utilice la doble diagonal (//), se pueden utilizar distintos delimitadores, por ejemplo, el producto phpMyAdmin utiliza en su lugar un doble signo de pesos ($$) en lugar de la doble diagonal; el por qué hemos substituido el punto y coma por una doble diagonal se debe a que dentro de los procedimientos almacenados las instrucciones se separan precisamente con punto y coma, lo que ocasionaría, de no cambiar el delimitador, que el motor de base de datos se confunda y envíe error al tratar de crear un procedimiento almacenado al no saber donde comienza y dónde termina éste.
La tercera línea CREATE PROCEDURE vendeProducto es la que en realidad inicia el cuerpo del procedimiento almacenado, siendo vendeProducto el nombre del mismo, posteriormente las siguientes dos líneas BEGIN y END contendrán el código del procedimiento y la última línea con la doble diagonal indicará al motor de base de datos el final del bloque de código que esperamos que procese.
En este momento deberemos cargar los scripts schema.sql y spVenta.sql, para ello iniciaremos una sesión desde la consola de MySQL y ejecutaremos las siguientes instrucciones una vez que hayamos ingresado.
Source schema.sql;
Source spVenta.sql;