解决方案 »

  1.   

    用数据表来统计当前连接的客户端是一种方法,但是不是最好的方法,如果客户端被强行终止进程。哪就无法正在执行退出操作了。2楼的,直接利用SQL去查询SQL Server的客户端,可以见鉴下。
      

  2.   


    客户端有多少个??我之前的公司,客户端只有几十个,所以比较好办。
    建一个表,包括:账号,更新时间。如果一个账号可以登录多台电脑,那再加一列:电脑名。如果一台电脑可以登录一个账号多次,就再加一列:连接号,这一列是执行SQL语句,得到连接到SQL Server的连接号。
    在程序中,每隔一分钟就更新一次这个表,如果表中没有当前用户,就增加一条记录;如果有,就更新列“更新时间”为当前时间。SQL语句:Update 表 set 更新时间=getdate()
    在SQL Server中增加一个排程,每隔三分钟就删除这个表中,更新时间在五分钟以前的。
    最后,在程序登录时,就通过这个表可以进行判断。如判断用户是否已经登录过,在那台电脑登录的;判断已经有多少个用户在里面。上面提到的“一分钟”、“三分钟”、“五分钟”可以自定义。
      

  3.   


    客户端有多少个??我之前的公司,客户端只有几十个,所以比较好办。
    建一个表,包括:账号,更新时间。如果一个账号可以登录多台电脑,那再加一列:电脑名。如果一台电脑可以登录一个账号多次,就再加一列:连接号,这一列是执行SQL语句,得到连接到SQL Server的连接号。
    在程序中,每隔一分钟就更新一次这个表,如果表中没有当前用户,就增加一条记录;如果有,就更新列“更新时间”为当前时间。SQL语句:Update 表 set 更新时间=getdate()
    在SQL Server中增加一个排程,每隔三分钟就删除这个表中,更新时间在五分钟以前的。
    最后,在程序登录时,就通过这个表可以进行判断。如判断用户是否已经登录过,在那台电脑登录的;判断已经有多少个用户在里面。上面提到的“一分钟”、“三分钟”、“五分钟”可以自定义。噢,那个SQL语句有错误,不用看。