Jump to content
php.lv forumi

Automātiskas darbības!


thesnarkie
 Share

Recommended Posts

Sveiki,

 

Gribēju uzzināt kā var izveidot kaut kādas automātiskas darbības. Piemēram, ja es tabulā kaut kādā rowā, kaut kādam lietotājam ierakstu colonā expire 2010-03-21 14:50:36, ka tad ir jābeidzās kaut kādam pakalpojumam un kad pienāk šis 2010-03-21 14:50:36 laiks es gribu, lai automātiski tas row tiek dzēsts, lai man nebūtu pašam jāskatās visi tiek expire datumi un manuāli viss jādzēš un so on..

Link to comment
Share on other sites

a) vienkārši

Pirms selecta ieliec delete from .. where expire_date<now()

 

b) ieteicams

selectā ieliec where expire_date<now()

cronu var reizi dienā, vai pat nedēļā laist un dzēst

Edited by l27
Link to comment
Share on other sites

Periodiskus procesus parasti laiž ne pārāk bieži, biežākais, ko esmu redzējis laikam ir sesiju automātiska izbeigšana (kā reiz delete) reizi kādās pāris minūtēs. Taču, lai cik bieži to arī nelaistu, tas neatrisina problēmu, ja precizitātei jābūt uz sekundi. Tāpēc vienīgais korektais risinājums ir likt tomēr tos papildus laika kritēriju where klauzā. Kas attiecas par ierakstu dzēšanu pirms atlases, tad:

- kā jau šeit minēja, tas vispārīgā gadījumā nav pārāk ātrdarbīgs risinājums,

- otrkārt, ja dati tiek atlasīti no vairākām vietām, tad visur jāliek arī dzēšana, kas jau kļūts apnicīgi un gan jau ka kaut kur to aizmirsīs izdarīt

- treškārt reizēm ir svarīgi no tiesību utml viedokļa nošķirt tīras datu atlases operācijas no datu koriģēšanas operācijām, un šeit normāla datu atlase pēkšņi ne no šā, ne no tā pārvēršas par datu koriģēšanas operāciju.

No otras puses visi šie 3 argumenti var nebūt spēkā konkrētajā gadījumā ;)

 

Gints Plivna

http://datubazes.wordpress.com

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

×
×
  • Create New...