Ciao a tutti!
Qualcuno avrà sgranato gli occhi alla lettura del titolo di questo post perchè da quanto ho capito i trigger si possono "attaccare" solo a INSERT, UPDATE e DELETE...
Non ho le competenze per dire se questa cosa sia intelligente o stupida (a me sembra stupida U_U) ma sta di fatto che a ma serve un trigger prima che una SELECT su una tabella venga processata. La situazione è:
ho una tabella `dlc` con colonne id, path, code, t0 ed il suo scopo è quello di fornire dei download "protetti" dal php che fa un controllo sulla tabella e SE il file compare nella tabella E SE il codice pasato a get corrisponde allora il php fa una fread e si trasforma nel file da scaricare... tutto facile... ma veniamo alla colonna t0 (timestamp di quando è stato creato il link) che è nata appunto perchè voglio che questi link siano attivi solo per un periodo di tempo limitato quindi cosa ho pensato?
codice:
CREATE TRIGGER removeOldDlc BEFORE SELECT ON dlc
 FOR EACH ROW BEGIN
  DELETE FROM dlc WHERE TIMESTAMPDIFF(MINUTE, CURRENT_TIMESTAMP, dlc.t0) > 30;
 END;
ovviamente clicco "Esegui" e MySQL mi mortifica...

qualcuno più esperto di me (non serve un genio) mi sa dire come posso ottenere questo risultato senza passare da php? (con php è facile ma vorrei imparare ad usare meglio i database)

grazie in anticipo a chi risponderà!