Curseur dynamique traitement simultané
Salut,
Je suis dans le cadre d'une appli qui doit pouvoir effectuer des traitements simultanés. Je suis donc obligé de gérer des noms de tables dynamique dans mes curseurs.
J'ai donc le code suivant :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| CREATE DEFINER=`root`@`localhost` PROCEDURE `exemple`(
IN noTable INT(8)
)
BEGIN
-- création de la table du traitement en cours sur une structure de base
SET @s = CONCAT('CREATE TABLE T_TRAITEMENT_',noTable,' LIKE T_STRU_TRAITEMENT');
PREPARE stmt FROM @s;
EXECUTE stmt;
-- remplissage de la table à traiter
SET @s = CONCAT('INSERT INTO T_TRAITEMENT_',noTable,'(AA, BB, CC, ,DD) SELECT AA, BB, CC, DD FROM T_IMPORT_', noTable);
PREPARE stmt FROM @s;
EXECUTE stmt;
-- le curseur... et c'est la que ça coince...
END |
Il me paraît impératif de pouvoir gérer une variable lors de la déclaration du curseur puisque je dois pouvoir gérer des traitements simultanés.
Hors malgré mes recherches, j'ai l'impression que ce n'est pas possible en MySQL.
Existe t-il une parade ?
Merci d'avance pour vos réponses !