Tomasz Mikołajczyk

Tomasz Mikołajczyk nauczyciel, trener
IT, Software QA
Manager

Temat: triger na datę?

czy mając do dyspozycji php i mysql'a mozna w jakis wydajny sposob zainicjowac automagiczne i automatyczne akcje jezeli data utworzenia jest dalej niz 7 dni od daty dzisiejszej?

Tzn. mam tabele powiedzmy:
id
ZMODYFIKOWANY_login
md5(pass)
ip
data_rejestracji

i chce np. zeby cos sie dzialo (kasowane bylo ZMODYFIKOWANY_ to akurat da sie str replace, albo ltrim etc. chyba) jezeli curdate bedzie >= data_rejestracji + 7dni

tak malo przejrzyscie moze napisalem, ale koncepcje przedstawilem.
Data_rejestracji jest w tabeli jako pole date() jako YYYY-MM-DD.

I wiem ze sa trigery, ale nie wiem czy da sie je wyzwolic tak jak chce (jw.)
Jesli nie to pozostanie mi np. przy kazdorazowym ladowaniu index.php powiedzmy sprawdzanie tego warunku (SIC! to chyba niepoprawne / nieoptymalne i w ogole)

konto usunięte

Temat: triger na datę?

Triggery sa tylko na akcje, update/insert/delete.
Dla takiego przypadku (o ile go dobrze zrozumialem), chyba najlepiej odpalac skrypt z crona, powiedzmy codziennie ktory sprawdzi aktualna date w porownaniu do dat rozpatrywanych rekordow i wykona operacje jakie chcemy.

konto usunięte

Temat: triger na datę?

I wiem ze sa trigery, ale nie wiem czy da sie je wyzwolic tak jak chce (jw.)

Tutaj tylko cron pomoże.
Jesli nie to pozostanie mi np. przy kazdorazowym ladowaniu index.php powiedzmy sprawdzanie tego warunku (SIC! to chyba niepoprawne / nieoptymalne i w ogole)

1. nie musisz wołać pliku php, możesz wywołać polecenie systemowe

2. Skrypt w którym łączysz się z bazą i wykonujesz jedno zapytanie nie będzie szybki (o ile struktura bazy jest poprawna), fakt nie jest to może optymalnie (bo przez powłokę systemową byłoby szybciej) ale spełni swoją rolę
Michał Jarosz

Michał Jarosz Frontend Developer &
Team Leader

Temat: triger na datę?

Nie tylko cron, ale też event scheduler (MySQL > 5.1.6)

http://dev.mysql.com/doc/refman/5.1/en/events.html

konto usunięte

Temat: triger na datę?

Dokladnie, Eventy w mysql są o wiele wydajniejszym rozwiązaniem, piszesz panelik takich jobów i masz posprzątane.

konto usunięte

Temat: triger na datę?

Ah, calkowicie o tym zapomnialem z racji ze ostatnio ciagle tylko PostgreSQL :)
Oczywiscie, jezeli robisz to pod MySQL taki scheduler bedzie najlepszym rozwiazaniem.
Tomasz Mikołajczyk

Tomasz Mikołajczyk nauczyciel, trener
IT, Software QA
Manager

Temat: triger na datę?

super, dzieki. Wlasnie poczytalem o cronie. Jestescie lepsi od manuala xD



Wyślij zaproszenie do