Mysql-ben lehet olyan triggert vagy tárolt eljárást készíteni, ami egy rekordot annak létrejötte után valemennyi idővel töröl?
Figyelt kérdés
Ha például egy napig akarom az adatokat tárolni a feltöltéstől számítva. Erre tudok ilyen eljárást írni. Fontos, hogy később akkor is lefusson, ha a kívánt időpontban áll a szerver. Tehát jelenlegi idő + 24 >= beszúrási idő feltétel mellett.2017. aug. 24. 20:45
1/2 anonim válasza:
A rekord egyik oszlopa (nevezzük mondjuk createDate-nek, és legyen DATETIME típusú) tartalmazza mindig a rekord létrehozásának időpontját.
Amikor hozzáadsz egy új rekordot, akkor az INSERT lekérdezésben, a createDate oszlop értéke egyezzen meg CURRENT_TIMESTAMP()-pal.
Adott időnként - erre szolgál Linuxos szervereken a cron - le kell futtatni egy szkriptet, ami törli az adott idő előtt létrehozott rekordokat - például az alábbi lekérdezéshez hasonlót alkalmazva:
DELETE FROM tabla WHERE TIMESTAMPDIFF(DAY, 'createDate', CURRENT_TIMESTAMP()) > 3;
2/2 anonim válasza:
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!