SQL dynamique dans les procédures stockées MySQL
Les versions MySQL 5.0.13 et ultérieures offrent la possibilité de construire et d'exécuter des instructions SQL dynamiques dans des procédures stockées . Cela permet une plus grande flexibilité et personnalisation des opérations de votre base de données.
Comment construire du SQL dynamique dans une procédure stockée
Pour créer du SQL dynamique, vous pouvez utiliser les étapes suivantes :
Exemple :
Considérez la procédure stockée suivante qui sélectionne une colonne dans une table en fonction des entrées fournies par l'utilisateur :
delimiter // CREATE PROCEDURE dynamic(IN tbl CHAR(64), IN col CHAR(64)) BEGIN SET @s = CONCAT('SELECT ',col,' FROM ',tbl); PREPARE stmt FROM @s; EXECUTE stmt; DEALLOCATE PREPARE stmt; END // delimiter ;
Pour utiliser la procédure stockée, vous pouvez l'appeler avec les noms de table et de colonne souhaités comme suit :
CALL dynamic('customers', 'name');
Cela exécutera l'instruction SQL suivante :
SELECT name FROM customers;
Remarque :
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!