设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

12下一页
返回列表 发新帖
查看: 3805|回复: 18
打印 上一主题 下一主题

[Access本身] 如何根据登录/退出日志,提炼出用户在线状态?

[复制链接]
跳转到指定楼层
1#
发表于 2011-7-6 00:39:46 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 zww3008 于 2011-7-6 11:39 编辑

判断局域网上当前有哪些用户在线,一种做法是登录的用户前台使用计时器触发方式不断向后台数据库写数据标志状态来判断。但我想通过操作日志来实现。
我的系统有登录操作日志(下图),根据“用户登录”、“退出系统”(正常按退出按钮)或“关闭系统”(直接点右上角红叉退出),可以人工判断出某电脑上的某用户是否在线。但我想根据此表建立一个查询或通过代码直接反映出来,不知如何实现?





本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
 楼主| 发表于 2011-7-6 11:39:45 | 只看该作者
补上附件。
3#
发表于 2011-7-6 11:40:07 | 只看该作者
问红尘大师吧,这个登陆系统是他做的。
4#
 楼主| 发表于 2011-7-6 13:37:33 | 只看该作者
想到了一个方法:建一个“在线用户”表,写登录日志的同时向“在线用户”表内写入信息,退出或关闭系统时再删除该条信息,则表内保存的就是当前的在线用户。晚上试试看。
5#
发表于 2011-7-6 21:46:28 | 只看该作者
查询:某个用户的最后登录时间和最后退出时间比较,最后登录时间>最后退出时间,表示在线,反之则不在线
当然得拿用户表和登录日志连接起来查询
6#
发表于 2011-7-6 21:49:06 | 只看该作者
或者如果没有冗余数据的话,统计某个用户的登录次数是否等于退出次数,如果登录次数=退出次数,则不在线,否则表示该用户为在线
7#
发表于 2011-7-6 21:53:24 | 只看该作者
也可以在用户表中增加一个表示用户的在线状态的字段(是/否类型就可以),用户登录的时候把该字段更新为“是”,用户退出系统的时候,把该字段更新为“否”,你要查询用户在线情况,直接查询用户表就可以了
8#
发表于 2011-7-6 21:56:36 | 只看该作者
建一个在线表也可以。不建议增加一个表专门记录在线状态,特殊需要可自便。
9#
 楼主| 发表于 2011-7-7 00:38:47 | 只看该作者
aslxt 发表于 2011-7-6 21:53
也可以在用户表中增加一个表示用户的在线状态的字段(是/否类型就可以),用户登录的时候把该字段更新为“是 ...

谢谢你的回复。不过用户表不带电脑名称信息。
新建一个在线用户表,已经实现了:
    strSQL = " INSERT INTO [在线用户](FComputerName,FUserName)" & _
                 " SELECT '" & Environ$("ComputerName") & "','" & strCurrentUserName & "'"
        CurrentDb.Execute strSQL

不过,删除该用户的代码不如如何写。下面SQL查询语句测试是可以的
DELETE 在线用户.FComputerName, 在线用户.FUserName
FROM 在线用户
WHERE (((在线用户.FComputerName)=Environ$("ComputerName")) AND ((在线用户.FUserName)=UserName()));
但不知如何以VBA代码表示,以下代码无效:
  strSQL = "DELETE  * FROM 在线用户 WHERE (((在线用户.FComputerName)=" & _
    Environ$("ComputerName") & ") AND ((在线用户.FUserName)=" & UserName() & "))"
    CurrentDb.Execute strSQL

10#
 楼主| 发表于 2011-7-7 00:39:49 | 只看该作者
aslxt 发表于 2011-7-6 21:49
或者如果没有冗余数据的话,统计某个用户的登录次数是否等于退出次数,如果登录次数=退出次数,则不在线,否 ...

肯定有冗余数据,如网线被意外断开时...
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-10-6 13:24 , Processed in 0.120869 second(s), 35 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表