在我的应用程序中,我不允许用户多次登录同一用户的应用程序。每次他登录系统时,我都会在他登录的数据库中更新他的状态,在他退出后,他的状态也会更新。我的问题是,如果由于任何原因导致错误并且应用程序崩溃,他将无法登录。我的问题是,如果用户空闲15,我可以用任何方式检测应用程序分钟并激活他的状态。我在c#中编写应用程序,我的数据库是MySQL数据库。请建议我该怎么做。 感谢
答案 0 :(得分:0)
您可以将最后一个用户请求的时间存储在数据库中,如果超过15分钟,则他处于空闲状态。
答案 1 :(得分:0)
如果您想要一个更强大的解决方案,允许立即重新登录,您可以将CONNECTION_ID()
的结果存储在您的表中。当用户正常注销时,请将其重新设置为NULL
。如果连接ID不是NULL
,则可以使用SHOW PROCESSLIST
确定连接是否仍然存在。如果不是,则应用程序已崩溃,您可以允许登录。当然,这取决于您的应用程序只与数据库建立一个持久连接。