sql >> Database teknologi >  >> RDS >> Mysql

Sådan opdateres databasen automatisk efter sessionen er udløbet uden at opdatere på min side

Den bedste mulighed er ikke at bruge et aktivt/ikke aktivt flag i databasen, men i stedet bruge noget som en last_active tidsstempel. Når brugeren tilgår en side, skal du opdatere tidsstemplet til CURRENT_TIMESTAMP() . Og for at afgøre, om brugeren er aktiv i øjeblikket, skal du forespørge efter WHERE active_timestamp < TIMESTAMPADD(MINUTE, -60, CURRENT_TIMESTAMP())

Sørg for at indstille active_timestamp som en DATETIME indtast tabelstrukturen. (ALTER TABLE users ADD COLUMN active_timestamp datetime AFTER username' )

Problemet her er, at dit script ser ud til at ville sparke brugeren ud, når sessionen er inaktiv. Til dette bør du se på JavaScript, indstille en timer, der tæller ned over 1 time, og hvis der ikke er nogen aktivitet, skal du omdirigere siden.



  1. Hvorfor bruge Foreign Key-begrænsninger i MySQL?

  2. MySQL:Kan jeg lave en venstre join og kun trække én række fra jointabellen?

  3. Er det muligt at bruge URL-parametre med mySQL/JSP?

  4. ORA-04084:kan ikke ændre NYE værdier for denne triggertype