• aspnet_Membership_GetNumberOfUsersOnline


    ALTER  PROCEDURE dbo.aspnet_Membership_GetNumberOfUsersOnline --查询在线用户
        @ApplicationName            NVARCHAR(256),
        
    @MinutesSinceLastInActive   INT
        
    @TimeZoneAdjustment         INT --显示新的本地时间而必须添加到 [通用协调时间](utc) 的分钟数。
    AS
    BEGIN  
        
    DECLARE @DateActive DATETIME --声明变量活动时间
        SELECT  @DateActive = DATEADD(minute,  -(@MinutesSinceLastInActive + @TimeZoneAdjustment), GETDATE())
         
    /*当前时间的分钟数加上-(@MinutesSinceLastInActive + @TimeZoneAdjustment),字段……*/
         
    /* GETDATE()按 datetime 值的 Microsoft? SQL Server? 标准内部格式返回当前系统日期和时间*/
        
    DECLARE @NumOnline INT --声明变量用户在线数
        SELECT  @NumOnline = COUNT(*)
        
    FROM    dbo.aspnet_Users u(NOLOCK),
                dbo.aspnet_Applications a(NOLOCK),
                dbo.aspnet_Membership m(NOLOCK)
        
    WHERE   u.ApplicationId = a.ApplicationId                  AND
                LastActivityDate 
    > @DateActive                     AND
                a.LoweredApplicationName 
    = LOWER(@ApplicationNameAND
                u.UserId 
    = m.UserId
        
    /*最近活动时间大于设置的活动的时间就表示用户在线,可能是因为用户状态的原因,客户端不
         在线的话,服务器还要保存用户状态一段时间,所以要设置一个活动时间@DateActive。
         好象有点。
    */

        
    RETURN(@NumOnline--返回查询符合条件的在线数
      /*COUNT()返回组中项目的数量*/
    END
  • 相关阅读:
    【12】简单SQL语句
    【11】分离与附加
    【10】约束
    CSS深入理解学习笔记之vertical-align
    CSS深入理解学习笔记之relative
    CSS深入理解学习笔记之z-index
    CSS深入理解学习笔记之margin
    CSS深入理解学习笔记之padding
    CSS深入理解学习笔记之border
    网页结构与表现原则
  • 原文地址:https://www.cnblogs.com/ruanbl/p/490052.html
Copyright © 2020-2023  润新知