网管联盟 | 网管论坛 | 网管u家 | 网管博客 | 网管软件 | 网管求职 | 小游戏 | 网管搜索 | 网管原创 | 网管聚合 | 网管读摘 | 网管焦点 | 世界素材 | 会员投稿 | 会员中心 
中国网管联盟
Windows Linux Cisco 网络技术 数据库 黑客攻防 DotNet Java PHP 认证 新闻资讯 服务器 存储资讯 网络设备 网管学堂 技术专题 焦点 网吧频道
 当前位置: > bitsCN.com > 数据库技术 > Oracle > 性能调优 > 临时表在Oracle与SQL Server数据库中的异同-性能调优  

临时表在Oracle与SQL Server数据库中的异同-性能调优

2008-06-25  作者:bitsCN整理  来源:中国网管联盟  点评 投稿 收藏

        常见应用:

中国网管联盟bitsCN.com

        临时表在数据库设计中,有着举足轻重的作用。

网管网www.bitscn.com

        如我们可以利用临时表的功能来限制同一个用户名多次登陆到同一个系统中去。例如现在有一个财务管理系统,企业希望同一个用户在同一时间里只能登陆一次,这主要是用来限制每位员工都以自己的用户名与密码登陆。如此限制的目的主要是为财务管理系统中的每张单据找到其主人。 网管联盟bitsCN_com

        原始方案:

网管联盟bitsCN_com

        在以前数据库设计的时候,也有人不用临时表进行这方面的限制,而用实体数据库表来登记相关的信息。如在用户信息表中有一列专门用来记录用户的当前登陆状态。当用户登陆系统后,该用户登陆状态的字段就改为Y,而当用户退出系统能后,该字段的内容又改为N。这个方案看起来是可行的,但是,其在实际应用中,有一个非常大的漏洞。若用户登陆到系统后,终端因为各种原因,如病毒、断电等突然状况,发生死机的话,此时,用户虽然没有登陆到系统中去,但是,因为其退出系统的时候,没有正常退出,这就导致在财务管理系统中的用户信息表中,显示该用户的登陆状态仍然为Y。此时,用户尝试登陆到财务管理系统中去的话,就会被系统拒绝,系统会认为该用户已经登陆了系统,不能重复登陆。 网管u家u.bitsCN.com

        所以说,利用实体表来记录用户登陆的信息,存在着管理上的漏洞。

中国网管论坛bbs.bitsCN.com

        利用临时表实现用户重新登陆的限制: 网管联盟bitsCN@com

        后来,数据库设计师们想,能否把该用户登陆信息记录在一张临时性的表中呢?当用户结束会话,无论是正常的退出还是因为意外情况的退出,只要用户结束一个会话后,那么 该临时表中的内容就会清空。

中国网管论坛bbs.bitsCN.com

        若跟这个需求结合的话,数据库设计师就希望能够实现如下功能。 中国网管联盟bitsCN.com

        当用户登陆系统开始一个会话后,数据库系统就建立一张临时表,该表中至少有一个内容,就是用户的帐号(或者该帐号对应的ID)。当有其他用户登陆到系统的时候,系统会先从这张临时表中查询,是否有相同的用户记录。若有的话,就会拒绝用户的登陆,警告用户已经有相同的用户登陆了。当用户正常退出系统或者因为以外情况退出系统结束当前会话的时候,那么数据库系统就会清除这张表的内容。如此,当用户下次登陆系统的话,即使是在意外情况下登陆系统的,也可以正常的登陆。

网管下载dl.bitscn.com

        可见,数据库的临时表在企业实际应用中有着举足轻重的作用。 网管网www.bitscn.com

        在ORACLE数据库与SQL SERVER数据库中,都实现了临时表的功能。不过两者实现的方式有差异。而不同的实现方式又赋予了其不同的特点,这是我们在数据库选型中不得不重视的一方面内容。

网管网www_bitscn_com

        两个数据库临时表实现方式的异同:

中国网管论坛bbs.bitsCN.com

        SQL SERVER临时表跟ORACLE数据库临时表的差异,可以利用一句话来概括。SQL SERVER 临时表是在需要用到的时候创建;而ORACLE 数据库的临时表,则是在数据库初始化中就开始创建,在具体的会话或者事务开始后进行操作,结束一个会话或者结束一个事务后该数据库的内容就会被清空。
网管u家u.bitsCN.com


TAGs
 上一篇:SQL Server 2008与Oracle 11g 相比较-性能调优   下一篇:Oracle索引原理-性能调优
临时表在Oracle与SQL Server数据库中的异同-性能调优 评论:
loading.. 评论加载中…
评论:请自觉遵守互联网相关政策法规,评论不得超过250字。

验证码: 注册用户
本类热门排行:
最新推荐文章:
网管论坛交流: