|
|
导航: |
论坛 -> DELPHI技术
斑竹:liumazi,sephil |
|
作者: |
|
2004/2/21 0:51:00 |
标题: |
|
加入我的收藏 |
楼主: |
请教各位高手,用MSSQL做后台,如何防止一个用户名在多台客户端同时登录呢?如果在服务器用户资料表做标记,那万一客户端死机,没有改变标记,则此帐号不就挂住了吗?请指教。
----------------------------------------------
- |
作者: |
cjrb (Thinking In 魂) |
★☆☆☆☆ |
-
|
盒子活跃会员 |
|
2004/2/21 1:25:52 |
1楼: |
用局部临时表应该可以,与应用服务器连接断开之后,局部临时表自动删除!
----------------------------------------------
充电..........
|
作者: |
|
2004/2/21 2:07:18 |
2楼: |
能否再说仔细一点,因为我刚开始编网络应用程序。对MSSQL不太了解,谢谢
----------------------------------------------
-
|
作者: |
cjrb (Thinking In 魂) |
★☆☆☆☆ |
-
|
盒子活跃会员 |
|
2004/2/21 9:33:08 |
3楼: |
SQL临时表: 局部 #Table name 在当前用户连接中可以调用 全局 ##Table name 在整个SQLServer中可以调用
用户表:用户名 密码 标识(存放临时表ID)
用户登录时: 用户表的临时表是否存在 Select name,id From Tempdb.dbo.sysobjects where id=标识 有记录则已登录。
登录成功后: 建立一临时表 create table #tmp (tmp int); --上面将会在Tempdb.dbo.sysobjects表中产生一条记录 --Select name,id From Tempdb.dbo.sysobjects -- name ID --#tmp__...(省略)_000000000012(后面为连接用户的ID) 1977058079(存入用户标识字段) --将select Object_Id('Tempdb.dbo.#tmp') (得到当前用户的临时表ID) --1977058079存入你的用户标识字段。 --注:创建临时表的Query单独用一个Query控件。IF Query Close,临时表就没了
----------------------------------------------
充电..........
|
作者: |
cjrb (Thinking In 魂) |
★☆☆☆☆ |
-
|
盒子活跃会员 |
|
2004/2/21 11:20:09 |
4楼: |
DEMO见附件
----------------------------------------------
充电..........
|
|