


全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
利用SQL的全局临时表防止用户重复登录 在我们开发商务软件的时候,常常会遇到这样的一个问题:怎样防止用户重复登录我们的系统?特别是对于银行或是财务部门,更是要限制用户以其工号身份多次登入。可能会有人说在用户信息表中加一字段判断用户工号登录的状态,登录后写1,退出时写0,且登录时判断其标志位是否为1,如是则不让该用户工号登录。但是这样那势必会带来新的问题:如发生象断电之类不可预知的现象,系统是非正常退出,无法将标志位置为0,那么下次以该用户工号登录则不可登入.Codecreateproceduregp_findtemptable/*寻找以操作员工号命名的全局临时表*如无则将out参数置为0并创建该表,如有则将out参数置为1*在connection断开连接后,全局临时表会被SQLServer自动回收*如发生断电之类的意外,全局临时表虽然还存在于tempdb中,但是已经失去活性*用object_id函数去判断时会认为其不存在.*/v_useridvarchar(6),-操作员工号i_outintout-输出参数0:没有登录1:已经登录asdeclarev_sqlvarchar(100)ifobject_id(tempdb.dbo.#+v_userid)isnullbeginsetv_sql=createtable#+v_userid+(useridvarchar(6)exec(v_sql)seti_out=0endelseseti_out=1在这个过程中,我们看到如果以用户工号命名的全局临时表不存在时过程会去创建一张并把out参数置为0,如果已经存在则将out参数置为1。这样,我们在我们的应用程序中调用该过程时,如果取得的out参数为1时,我们可以毫不客气地跳出一个message告诉用户说”对不起,此工号正被使用!”上面还涉及到一个OBJECT_ID ()函数:Syntax:OBJECT_ID ( database_name . schema_name .| schema_name .object_name ,object_type )一般语法:int object_id(objectname);此方法返回数据库对象标识号。其中,参数objectname 表示要使用的对象,其数据类型为nchar或char(如果为char,系统将其转换为nchar)object_type:为可选参数,其数据类型为nchar或char(如果为char,系统将其转换为nchar),指明架构范围的对象类型(object_name为字符串通过它,可以说明这个字符串究竟是说明对象,其列表见文章结尾)ps:使用 OBJECT_ID 不能查询非架构范围内的对象(如 DDL 触发器)。对于在 sys.objects 目录视图中找不到的对象,需要通过查询适当的目录视图来获取该对象的标识号。例如,若要返回 DDL 触发器的对象标识号,请使用 SELECT OBJECT_ID FROM sys.triggers WHERE name = DatabaseTriggerLog。返回类型为int,表示该对象在系统中的编号,如果找不到或发生错误一律返回NULL。例子:A.返回数据库AdventureWorks中Production.WorkOrder表的标识号USEmaster;GOSELECTOBJECT_ID(NAdventureWorks.Production.WorkOrder)ASObjectID;GOB.存在性检查下列会确认资料表有物件的标识码,藉此检查指定的资料表是否存在。如果存在就删除。USEAdventureWorks;GOIFOBJECT_ID(Ndbo.AWBuildVersion,NU)ISNOTNULLDROPTABLEdbo.AWBuildVersion;GO此方法一般用来判断数据库中本来用没有此对象(procedures,views,functions等).注意:当该参数对系统函数可选时,则系统采用当前数据库、主机、服务器用户或数据库用户。内置函数后面必须跟圆括号。
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 图书回收站点企业制定与实施新质生产力项目商业计划书
- 信息技术班企业制定与实施新质生产力项目商业计划书
- 考虑差异化产品的供应链库存信息披露决策研究
- CO2注入急倾斜巨厚煤层强化甲烷产出过程数值模拟研究
- 基于“阳化气阴成形”理论探讨深静脉血栓形成中医证型的相关性研究
- 基于亚像素位移的无透镜超分辨成像方法研究
- 水毒的护理查房
- 研究生与论文
- 如何写教学论文培训心得
- 小学数学教与学的困惑与对策
- 北京市2025学年高二(上)第一次普通高中学业水平合格性考试物理试题(原卷版)
- 2025年高考河北卷物理高考真题+解析(参考版)
- 中医老人保健讲座课件
- -2024-2025学年统编版语文二年级下册 期末复习练习题(含答案)
- 2025至2030中国室内滑雪场行业项目调研及市场前景预测评估报告
- 2025四川绵阳市平武县兴帮农业发展集团有限公司招聘10人笔试参考题库附带答案详解
- 西南林业大学《算法分析与设计》2023-2024学年第二学期期末试卷
- 征集和招录人员政治考核表
- 2025年中国融通农业发展有限集团有限公司招聘笔试冲刺题(带答案解析)
- 年中国鹦鹉养殖市场发展策略及投资潜力可行性预测报告
- 弱电工证考试题库及答案
评论
0/150
提交评论