Table of Contents
Crear procedimiento almacenado en MySQL para insertar datos en la tabla camión (Base de datos transportes)
Si estás aprendiendo MySQL o trabajando con bases de datos, saber crear un procedimiento almacenado para insertar datos es fundamental. En este tutorial te explico paso a paso cómo crear un procedimiento para añadir registros en la tabla camion dentro de la base de datos transportes.
¿Qué vas a aprender?
- Crear procedimientos almacenados en MySQL
- Insertar datos en una tabla usando parámetros
- Ejecutar procedimientos almacenados
- Validar resultados correctamente
Estructura de la tabla camión
Antes de empezar, es importante conocer los campos que vamos a utilizar:
- IdCamion → Número entero (identificador único)
- Matricula → Cadena de texto (5 caracteres)
- Tipo → Puede ser:
largo,cortoodoble
Seleccionar la base de datos
Primero, seleccionamos la base de datos donde trabajaremos:
USE transportes;
Consultar la tabla camión
Para ver los datos actuales de la tabla:
SELECT * FROM camion;
Probar inserción manual (recomendado)
Antes de crear el procedimiento, es buena práctica probar un INSERT manual:
INSERT INTO camion (idCamion, Matricula, tipo)
VALUES (1, "3358F", "Largo");
Esto te permite verificar que la estructura de la tabla funciona correctamente.
Eliminar el procedimiento si ya existe
Evita errores eliminando versiones anteriores:
DROP PROCEDURE IF EXISTS insertarCamion;
Crear procedimiento almacenado en MySQL
Ahora sí, creamos el procedimiento usando parámetros de entrada (IN):
DELIMITER //CREATE PROCEDURE insertarCamion(
IN pIdCamion INT,
IN pMatricula VARCHAR(30),
IN pTipo VARCHAR(30)
)
BEGIN
INSERT INTO camion (idCamion, Matricula, tipo)
VALUES (pIdCamion, pMatricula, pTipo);
END //DELIMITER ;
Ejecutar el procedimiento almacenado
Asignamos valores a variables:
SET @v_IdCamion = 2;
SET @v_Matricula = "2340F";
SET @v_Tipo = "Doble";
Llamamos al procedimiento:
CALL insertarCamion(@v_IdCamion, @v_Matricula, @v_Tipo);
Verificar los datos insertados
SELECT * FROM camion;
Versión mejorada del procedimiento
DELIMITER //CREATE PROCEDURE insertarCamion(
IN pIdCamion INT,
IN pMatricula VARCHAR(30),
IN pTipo VARCHAR(30)
)
BEGIN
IF pTipo IN ('Largo', 'Corto', 'Doble') THEN
INSERT INTO camion (idCamion, Matricula, tipo)
VALUES (pIdCamion, pMatricula, pTipo);
ELSE
SIGNAL SQLSTATE '45000'
SET MESSAGE_TEXT = 'Tipo de camión no válido';
END IF;
END //DELIMITER ;
Te puede interesar:
Seguir leyendo:





