Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Narwal Flow: con il mocio orizzontale lava i pavimenti al meglio
Narwal Flow: con il mocio orizzontale lava i pavimenti al meglio
Grazie ad un mocio rotante che viene costantemente bagnato e pulito, Narwal Flow assicura un completo e capillare lavaggio dei pavimenti di casa. La logica di intellignza artificiale integrata guida nella pulizia tra i diversi locali, sfruttando un motore di aspirazione molto potente e un sistema basculante per la spazzola molto efficace sui tappeti di casa
Panasonic 55Z95BEG cala gli assi: pannello Tandem e audio senza compromessi
Panasonic 55Z95BEG cala gli assi: pannello Tandem e audio senza compromessi
Con un prezzo di 2.999 euro, il Panasonic Z95BEG entra nella fascia ultra-premium dei TV OLED: pannello Primary RGB Tandem, sistema di raffreddamento ThermalFlow, audio Technics integrato e funzioni gaming avanzate lo pongono come un punto di riferimento
HONOR Magic V5: il pieghevole ultra sottile e completo! La recensione
HONOR Magic V5: il pieghevole ultra sottile e completo! La recensione
Abbiamo provato per diverse settimane il nuovo Magic V5 di HONOR, uno smartphone pieghevole che ci ha davvero stupito. Il device è il più sottile (solo 4.1mm) ma non gli manca praticamente nulla. Potenza garantita dallo Snapdragon 8 Elite, fotocamere di ottima qualità e batteria in silicio-carbonio che garantisce un'ottima autonomia. E il Prezzo? Vi diciamo tutto nella nostra recensione completa.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 08-01-2010, 20:21   #1
miao84
Member
 
Iscritto dal: Oct 2009
Messaggi: 239
[MYSQL] Trigger che elimina ogni riga dopo x giorni

Ho da poco imparato ad usare i trigger, e vorrei eliminare in modo automatico (tipo ogni 30 giorni) tuple di tabelle che contengono delle colonne con una data...quindi cancellare date vecchie di almeno 30 giorni....mi aiutate a crearlo??
miao84 è offline   Rispondi citando il messaggio o parte di esso
Old 09-01-2010, 10:42   #2
SerMagnus
Senior Member
 
L'Avatar di SerMagnus
 
Iscritto dal: Sep 2005
Messaggi: 1400
quello che chiedi non è possibile, i trigger si attivano solo su determinati eventi su di una tabella.

puoi risolvere tramite cron lanciando una query o una storedprocedure
SerMagnus è offline   Rispondi citando il messaggio o parte di esso
Old 09-01-2010, 13:31   #3
miao84
Member
 
Iscritto dal: Oct 2009
Messaggi: 239
ok la questione del tempo non è fondamentale, principalmente devo svuotare ogni tanto la tabella....se la condizione fosse che la tabella ha raggiunto una dimensione di tuple >=30?
miao84 è offline   Rispondi citando il messaggio o parte di esso
Old 09-01-2010, 14:49   #4
SerMagnus
Senior Member
 
L'Avatar di SerMagnus
 
Iscritto dal: Sep 2005
Messaggi: 1400
in quel caso lo puoi fare tramite trigger, utilizzando una condizione AFTER INSERT
SerMagnus è offline   Rispondi citando il messaggio o parte di esso
Old 09-01-2010, 16:08   #5
Broadband
Member
 
Iscritto dal: Jul 2005
Messaggi: 156
Ciao ho fatto esattamente la stessa cosa 1 mesetto... come ti hanno risposto usa AFTER INSERT.

SE non hai urgenza quando lunedi' sono a lavoro ti posto il codice.

Ciao
__________________
Corsair r300 | Be Quiet 630W 80+ | Asrock Extreme 6 | i5 3570k@4.2 | Artic cooling Freezer 13 | 2x4GB Corsair low profile | SSD M4 128 GB | SSD EVO 256GB | Sapphire nitro 390X
Broadband è offline   Rispondi citando il messaggio o parte di esso
Old 16-01-2010, 13:20   #6
miao84
Member
 
Iscritto dal: Oct 2009
Messaggi: 239
Quote:
Originariamente inviato da Broadband Guarda i messaggi
Ciao ho fatto esattamente la stessa cosa 1 mesetto... come ti hanno risposto usa AFTER INSERT.

SE non hai urgenza quando lunedi' sono a lavoro ti posto il codice.

Ciao
Scusa se ti rispondo solo ora...se me lo posti mi fai un favore, grazie!
miao84 è offline   Rispondi citando il messaggio o parte di esso
Old 19-01-2010, 10:34   #7
Broadband
Member
 
Iscritto dal: Jul 2005
Messaggi: 156
Codice:
create or replace TRIGGER 
logtrigger
BEFORE INSERT ON TABLE
DECLARE
x number;
BEGIN
  select count(*) into x from table where logtype='info';
  
  if (x>2000) THEN
    
      delete from table where date in ( select date from (select date from table where logtype='info' order by logdate asc) where rownum<=1000);
      
    
  end if;
END;
Ciao questo script elimina 1k tuple (le piu' vecchie in ordine cronologico) dalla tabella TABLE quando TABLE supera 2k entry.

Spero ti sia utile ciao
__________________
Corsair r300 | Be Quiet 630W 80+ | Asrock Extreme 6 | i5 3570k@4.2 | Artic cooling Freezer 13 | 2x4GB Corsair low profile | SSD M4 128 GB | SSD EVO 256GB | Sapphire nitro 390X
Broadband è offline   Rispondi citando il messaggio o parte di esso
Old 19-01-2010, 17:12   #8
miao84
Member
 
Iscritto dal: Oct 2009
Messaggi: 239
grazie ancora Broadband
miao84 è offline   Rispondi citando il messaggio o parte di esso
Old 21-02-2010, 13:20   #9
miao84
Member
 
Iscritto dal: Oct 2009
Messaggi: 239
mi sapete dire dove sbaglio in questo trigger? sto usando phpmyadmin per il mio db mysql

Codice:
CREATE TRIGGER svuota_visita
AFTER INSERT ON visita
DECLARE vis NUMBER;
BEGIN
SELECT COUNT(*) INTO vis FROM visita WHERE effettuata='1';
IF vis >= 4 THEN
DELETE FROM visita WHERE effettuata='1' AND data_visita=max(data_visita);
END IF;
END;
la sintassi mi sembra giusta,ma da quest'errore:

#1064 - Errore di sintassi nella query SQL vicino a 'DECLARE vis NUMBER; BEGIN SELECT COUNT(*) INTO vis FROM visita WHERE effettuat' linea 3
miao84 è offline   Rispondi citando il messaggio o parte di esso
Old 21-02-2010, 17:23   #10
miao84
Member
 
Iscritto dal: Oct 2009
Messaggi: 239
sono riuscito ad inserire il trigger, solo che ora durante l'esecuzione del programma, se arrivo al fatidico numero in cui entro nell'if del trigger mi da:

Codice:
java.sql.SQLException: Can't update table 'visita' in stored function/trigger because it is already used by statement which invoked this stored function/trigger.
probabilmente perchè l'azione che deve svolgere il trigger è sulla tabella che lancia il trigger stesso....capisco che è una cosa un po avanzata, ma qualcuno può aiutarmi???
miao84 è offline   Rispondi citando il messaggio o parte di esso
Old 22-02-2010, 09:41   #11
miao84
Member
 
Iscritto dal: Oct 2009
Messaggi: 239
up
miao84 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Narwal Flow: con il mocio orizzontale lava i pavimenti al meglio Narwal Flow: con il mocio orizzontale lava i pav...
Panasonic 55Z95BEG cala gli assi: pannello Tandem e audio senza compromessi Panasonic 55Z95BEG cala gli assi: pannello Tande...
HONOR Magic V5: il pieghevole ultra sottile e completo! La recensione HONOR Magic V5: il pieghevole ultra sottile e co...
Recensione Google Pixel 10 Pro XL: uno zoom 100x assurdo sempre in tasca (e molto altro) Recensione Google Pixel 10 Pro XL: uno zoom 100x...
Lenovo IdeaPad Slim 3: un notebook Snapdragon X economico Lenovo IdeaPad Slim 3: un notebook Snapdragon X ...
TP-Link protagonista a IFA 2025 con tant...
TK02 S è la nuova e-enduro di THOK con m...
Fallout 76: Rinnovamento C.A.M.P., pi&ug...
Toyota produrrà auto elettriche in Europ...
HONOR Magic V5 parte bene: lancio da rec...
Dyson svela 11 nuovi prodotti all'IFA: d...
Zurigo si scalda con i rifiuti: le pompe...
Noctua pubblica la nuova roadmap: primo ...
Palo Alto Networks presenta novità...
Surya, il modello di IA di IBM e NASA ch...
I browser Arc e Dia diventano parte dell...
Duster e Bigster, tutto quello che manca...
Superman: Man of Tomorrow, confermato da...
SK Hynix, accordo storico: 10% degli uti...
Arriva Veeam Software Appliance: protezi...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 03:39.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Served by www3v