我正在查找为日志表创建存储过程的答案。以下是我需要编写该SP的场景。如何为日志表创建存储过程
无论何时用户使用用户唯一的LOGIN-ID登录或注销存储登录和退出时间。
此外,我必须限制用户登录,如果用户以前的会话异常终止或用户关闭应用程序没有正确注销,然后用户需要等待10分钟才能下一次登录。
这是我的尝试:
ALTER PROCEDURE USP_CHECKER(@LOGINID VARCHAR(70))
AS
BEGIN
DECLARE @LASTID INT,@CURRENTTIME DATETIME,@TEMP INT,@HAS VARCHAR(30)
SELECT TOP 1 SLNO, @TEMP=(DATEDIFF(MI,LOGINDATETIME,GETDATE())) FROM TBL_LOGINDETAILS ORDER BY SlNo DESC
SET @HAS=(SELECT LoginID FROM TBL_LOGINDETAILS WHERE LogoutDateTime IS NULL)
IF @HAS IS NOT NULL
BEGIN
IF(@TEMP >= '10')
BEGIN
SET @CURRENTTIME = (SELECT DATEADD(MI, -10, GETDATE()))
UPDATE TBL_LOGINDETAILS SET [email protected] WHERE [email protected]
END
ELSE
RETURN @LASTID
--PREVENT FROM LOGIN
END
ELSE
INSERT INTO TBL_LOGINDETAILS (LoginID,LoginDateTime,isLogged) VALUES(@LOGINID,GETDATE(),'1')
END
所以你已经**有**你的存储过程 - 所以这是什么问题,**完全**? –
亚我有...但有一些性能问题。当我把它展示给她时,我的TL给人一种恐惧的样子...... HHAH – joshua