巧用SQL的全局临时表防止用户重复登录

delphi7实现SQL全局临时表防止用户重复登录 立即下载

在我们开发商务软件的时候,常常会遇到这样的一个问题:怎样防止用户重复登录我们的系统?特别是对于银行或是财务部门,更是要限制用户以其工号身份多次登入。

可能会有人说在用户信息表中加一字段判断用户工号登录的状态,登录后写1,退出时写0,且登录时判断其标志位是否为1,如是则不让该用户工号登录。但是这样那势必会带来新的问题:如发生象断电之类不可预知的现象,系统是非正常退出,无法将标志位置为0,那么下次以该用户工号登录则不可登入,这该怎么办呢?

或许我们可以换一下思路:有什么东西是在connection断开后可以被系统自动回收的呢?对了,SQL Server的临时表具备这个特性!但是我们这里的这种情况不能用局部临时表,因为局部临时表对于每一个connection来说都是一个独立的对象,因此只能用全局临时表来达到我们的目的。

好了,情况已经明朗话了,我们可以写一个象下面这样简单的存储过程:

create procedure gp_findtemptable -- 2010/04/07

/* 寻找以操作员工号命名的全局临时表

 * 如无则将out参数置为0并创建该表,如有则将out参数置为1

 * 在connection断开连接后,全局临时表会被SQL Server自动回收

* 如发生断电之类的意外,全局临时表虽然还存在于tempdb中,
但是已经失去活性

* 用object_id函数去判断时会认为其不存在.
 */
@v_userid varchar(6), -- 操作员工号
@i_out int out -- 输出参数 0:没有登录 1:已经登录
as
declare @v_sql varchar(100)
if object_id(''''tempdb.dbo.##''''+@v_userid) is null
begin
set @v_sql = ''''create table ##''''+@v_userid+
''''(userid varchar(6))''''
exec (@v_sql)
set @i_out = 0
end
else
set @i_out = 1

在这个过程中,我们看到如果以用户工号命名的全局临时表不存在时过程会去创建一张并把out参数置为0,如果已经存在则将out参数置为1。

这样,我们在我们的应用程序中调用该过程时,如果取得的out参数为1时,我们可以毫不客气地跳出一个message告诉用户说”对不起,此工号正被使用!”

vs + sql 完美解决用户同时登录问题(非常经典) SQL server临时表是经常需要用到的,下面就教您如何使用SQL server临时表解决防止用户重复登录问题,供您参考。 在我们开发商务软件的时候,常常会遇到这样的一个问题:怎样防止用户重复登录我们的系统?特别是对于银行或是财务部门,更是要限制用户以其工号 代码用vs2008编写,同时也有存储过程代码,小伙伴们可以测试。 立即下载

相关推荐

SQL全局临时表防止用户重复登录

为了防止用户的重复登录,在一开始想到的一种方法:   在用户表中添加一个字段,登录后写1,退出后写0.这样子在用户登录进行检查的时候判断这个字段是否为0,如果是0那么可以登录;但是这样子又带来了新的问题,如果在用户正在登录的过程中突然断电,那么表中写入的是1,也是说用户在以后的登录中都不能能够登录系统了。   另外一种方法:在SQL Server中建立全局临时表,如果用户没有登录建立一个临时表来存放用户,如果已经登录那么提醒用户此账号已经登录;临时表相比较上面一个方法的好处在于:当系统与SQL Server数据库的连接断开以后,临时表是可以被系统自动收回的,这样子用户下次登录的时候会再

利用SQL Server的全局临时表防止用户重复登录

利用SQL Server的全局临时表防止用户重复登录在我们开发商务软件的时候,常常会遇到这样的一个问题:怎样防止用户重复登录我们的系统?特别是对于银行或是财务部门,更是要限制用户以其工号身份多次登入。 可能会有人说在用户信息表中加一字段判断用户工号登录的状态,登录后写1,退出时写0,且登录时判断其标志位是否为1,如是则不让该用户工号登录。但是这样那势必会带来新的问题:如发生象断电之类不可预知的现象

无限深蓝的专栏 1099

使用 Wireshark 分析 PPPoE 流量中的 BRAS 名称 AC-Name

客户端发出广播请求,寻找 PPPoE 服务器。: BRAS 服务器响应 PADI 请求,提供服务并包含AC-Name。: 客户端选择一个 BRAS 并发起连接请求。: BRAS 确认连接并分配会话 ID。在这些阶段中,AC-Name是 BRAS 提供的一个关键字段,用于标识服务器名称。

caca_66的博客 2066

利用SQL Server的全局临时表防止用户重复登录(或者全局临时表的使用和生命周期)

  在我们开发商务软件的时候,常常会遇到这样的一个问题:怎样防止用户重复登录我们的系统?特别是对于银行或是财务部门,更是要限制用户以其工号身份多次登入。   可能会有人说在用户信息表中加一字段判断用户工号登录的状态,登录后写1,退出时写0,且登录时判断其标志位是否为1,如是则不让该用户工号登录。但是这样那势必会带来新的问题:如发生象断电之类不可预知的现象,系统是非正常退出,无法将标志位置为0,那么

慧慧的Blog 3914

手把手教你做基于stm32的红外、语音、按键智能灯光控制(上)

这次项目使用的板子是stm32f103c8t6最小系统板,这个板子在tb上都能够买到,随便一个最小系统板都可以,== 注意在买最小系统板的时候需要买一个stlink下载器来下载程序。显示模块是使用的0.96英寸的OLED屏幕,注意是使用的IIC通信协议的OLED屏幕,不是使用SPI总线协议的。这次写的代码还顺便集成了检测温湿度的功能,所以要使用DHT11温湿度传感器,来采集温度。本文所设计的基于单片机的灯光控制系统主要由模式选择功能、手动模式和自动模式组成。LED灯自然就是要控制的部件了。

nbbskk的博客 6557

单细胞 | pySCENIC·转录因子分析(二)

接上一篇,pySCENIC分析完之后就可以进行可视化了,个人认为最重要的有三个图:rss点图,rank图,转录因子表达水平热图,3个图结合着看。3.可视化rank图,可以自己改一下plotRSS_oneSet参数让图更好看一点。4. regulon表达水平热图,转录因子表达水平同理,得到的图类似只是输入不一样。2.可视化点图:寻找cluster特异性转录因子。1.loom文件读入R,提取数据。

生信练习生 4283

Sqlserver数据库中的临时表详解

临时表在Sqlserver数据库中,是非常重要的,下面就详细介绍SQL数据库中临时表的特点及其使用,仅供参考。 临时表与永久表相似,但临时表存储在tempdb中,当不再使用时会自动删除。临时表有两种类型:本地和全局。它们在名称、可见性以及可用性上有区别。 对于临时表有如下几个特点: 本地临时表就是用户在创建表的时候添加了“#”前缀的表,其特点是根据数据库连接独立。只有创建...

3927

联邦学习中的差分隐私保护详解及python实现

随着数据隐私法规(如 GDPR、CCPA)日益严格,传统将数据集中到云端训练模型的方式面临合规与安全风险。联邦学习通过让各客户端保留本地数据,仅共享模型更新,缓解了数据流动带来的隐私风险。但模型更新仍可能泄露个体信息。为进一步保障隐私,可在本地更新中引入差分隐私(DP)机制,通过向梯度或模型更新中注入随机噪声,防止反向推断原始数据citeturn0search9。

闲人编程的博客 1921

SQL Server中的临时表的应用

文章转载自:  SQL Server中的临时表的用法     http://www.studyofnet.com/news/171.html   一。临时表介绍 临时表在运行被创建的,虽说它的名字叫做临时表,可是对它的操作和我们平时操控表的操作基本一样, 比如最简单增、删、改、查等等。但是,需要注意的是临时表的创建是有范围限制的。 二、临时表分类   临时表分为2种,一种是本地

学习也休闲 2244

赛豆科技 AIVA 汽车智能体架构演进面试题与答案

摘要 赛豆科技AIVA汽车智能体架构从座舱AI演进到整车智能体,最终实现自进化的超级智能体。其核心是"先有AI再有车"的理念,将AI作为产品主轴而非附加功能。架构设计采用端-边-云协同,确保低延迟响应;整车智能体通过Planner、Tool Registry等关键组件实现自主决策;自进化机制结合车端个性化学习和云端群体学习,并设置多重安全验证。多域协作采用分层架构,关键安全功能仍由确定性逻辑控制。该架构实现了从被动响应到主动服务的范式转变,使车辆能够持续进化。

AI天才研究院 121

Python白色飘雪(完整代码)

Python绘制白色飘雪动画的完整代码。

AIGC 3万+

巧用SQL server的全局临时表防止用户重复登录

内容摘要:SQL Server的临时表具备这个特性!但是我们这里的这种情况不能用局部临时表,因为局部临时表对于每一个connection来说都是一个独立的对象,因此只能用全局临时表来达到我们的目的。   在我们开发商务软件的时候,常常会遇到这样的一个问题:怎样防止用户重复登录我们的系统?特别是对于银行或是财务部门,更是要限制用户以其工号身份多次登入。   可能会有人说在用户信...

weixin_34194087的博客 145

18、公开可用的PPG数据库介绍

本文介绍了多个公开可用的PPG(光电容积描记)数据库,包括PPG-BP数据库、MIMIC II波形数据库、运动期间手腕PPG数据库以及指尖PPG与呼吸数据库等。这些数据库提供了丰富的生理信号数据,适用于动脉血压检测、呼吸频率估计、运动干扰去除以及基于PPG的生物特征识别等研究。每个数据库的数据来源、受试者信息、信号特点和下载方式均有详细介绍,并展示了如何利用这些数据库进行信号分析和算法评估。

salt的博客 388
上一篇: sql server 2005只备份数据库的结构
下一篇: 连接数据库的字符串
DICOMV3PACS
博客等级 码龄17年 161粉丝 72原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值