Mysql - Procedimiento almacenado que comprueba si existe una tabla
Nombre de la función fnbase_istable
Realmente el procedimiento, en este caso, una función devuelve un entero 1 o 0 (no un buleano). Hace una consulta sobre information_schema.tables pasándole el string de 45 caracteres como nombre de la tabla a buscar
El procedimiento almacenado
DELIMITER //
CREATE FUNCTION fnbase_istable(sTableName VARCHAR(45))
RETURNS BOOLEAN
DETERMINISTIC READS SQL DATA
BEGIN
DECLARE iCount TINYINT(1) DEFAULT 0;
SELECT COUNT(*) INTO iCount
FROM information_schema.tables
WHERE table_schema = DATABASE()
AND table_name = sTableName;
RETURN iCount;
END//
DELIMITER ;
Cómo se utiliza:
SELECT fnbase_istable('app_product') AS n

Autor: Eduardo A. F.
Publicado: 20-09-2020 00:00