Bonjour.

J'ai cette procédure :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
DELIMITER $$
DROP PROCEDURE IF EXISTS updateCache$$
    CREATE PROCEDURE updateCache()
    SQL SECURITY DEFINER
COMMENT 'Updates cache totals every night'
    BEGIN
   REPLACE INTO cache (name,value,updatetime) 
 select 'msg_sum', SUM(counter), NOW()
   FROM logs;
REPLACE INTO cache (name,value,updatetime) 
 select CONCAT('chart_mpd_',DATE_FORMAT(NOW() - INTERVAL 1 DAY, '%Y-%m-%d_%a')), SUM(counter), NOW()
   FROM logs 
  WHERE lo BETWEEN DATE_SUB(CONCAT(CURDATE(), ' 00:00:00'), INTERVAL 1 DAY) AND DATE_SUB(CONCAT(CURDATE(), ' 23:59:59'), INTERVAL  1 DAY);
END$$
La procédure marche (les requêtes select et replace ) manuellement, mais je ne sais pas pourquoi l' auto remplacement des données dans la table cache à chaque nuit ne fonctionne pas.

Prière de m'aider. Merci d'avance.

merci d'avance