Можете да подготвите и изпълните само SQL, който е низов литерал или променлива, дефинирана от потребителя който съдържа текста на изявлението.
Опитайте това:
USE mydb;
DROP PROCEDURE IF EXISTS execSql;
DELIMITER //
CREATE PROCEDURE execSql (IN sqlq VARCHAR(5000)) COMMENT 'Executes the statement'
BEGIN
SET @sqlv = sqlq;
PREPARE stmt FROM @sqlv;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;
END //
DELIMITER ;