Üdv Mindenkinek!
Helyzet a következő:
adott egy belső vállalati nyilvántartórendszer. (Webes felületen belső webszerverrel, postgre adatbázis támogatással). Minden munkafolyamat egy táblában egy rekordként jelenik meg. (Azonosításhoz és egyéb hasznos dolgokhoz szükséges).
De ennek a táblának a lejárt sorait egyelőre csak kívülről, crontab -ból tudom törölni.
Az említett szerveren Debian Sarge fut PostgreSQL 7.4 -el.
Kérdésem: tud-e valaki a postgresql -nek olyan funkciójáról, mely időzítve kiszórja a timeout-os sorokat a táblából anélkül, hogy ehhez külső (pl. crontab) beavatkozásra lenne szükség?
A dokumentációban nem találtam erre utalást, de nemigen hiszem hogy nem is képes rá.
Biztos rosszul kerestem :(
Előre is köszönöm.
PtR
- 1101 megtekintés
Hozzászólások
Feltétlenül szinkron kell? Az nem jó, ha akkor törlöd a lejártakat, amikor új rekordot hozol létre?
____________________
jobbára ártalmatlan
- A hozzászóláshoz be kell jelentkezni
Szerintem nem kellene. Bőven elég mondjuk naponta egyszer törölni, nem kell minden naplóműveletnél szvsz, mert feleslegesen sok műveletet generál.
---
A Linux nem Windows, de a Windows se Linux.
- A hozzászóláshoz be kell jelentkezni
Igazad van, nagyobb táblák esetén az általad említett megoldás gazdaságosabb, kis terhelésnél viszont egyszerűbb egy triggert állítani az INSERT-re.
____________________
jobbára ártalmatlan
- A hozzászóláshoz be kell jelentkezni
Kerülőút: a webes alkalmazásban csinálsz egy ellenőrzést, hogy a legutolsó takarítás mikor volt, ezt letárolod valahol, ha annál-x órával régebb óta volt, akkor lefut a takarítás.
Pl. én így oldottam meg a nem a takarítást több helyen, igaz ott MySQL volt amúgy is.
---
A Linux nem Windows, de a Windows se Linux.
- A hozzászóláshoz be kell jelentkezni
Bár a pgAgent külső, hivatalosan szerintem ezt ajánlják, lévén a pg pgAdmin csapata fejleszti. Démonikus. :)
- A hozzászóláshoz be kell jelentkezni