网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > 数据库 > Oracle教程
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
数据库:数据库教程,数据库技巧,Oracle教程,MySQL教程,Sybase教程,Access教程,DB2教程,数据库安全,数据库文摘
本月文章推荐
.oracle8i学习笔记.
.Oracle Spatial 简介.
.Sendmail的出错信息是“mail loo.
.初学Oracle最经常碰到的错误及解.
.24×7环境转移ORACLE数据库.
.Start Console on Oracle9i VS O.
.postfix如何设置取消Delivered-T.
.Oracle9i基于视图(view)的约束声.
.Linux 的 “Find”.
.oracle 常用SQL查询,望对大家有.
.Oracle 数据库向 MS SQL Server .
.Weblogic8配置Oracle数据库连接池.
.实现RedHat非正常关机的自动磁盘.
.Develop2K 6.0常见问题解答.
.“Snapshot too old” Detailed .
.Oracle新手最经常碰到的6个错误及.
.数据库安全性策略.
.Oracle9i 数据库管理实务讲座(三).
.IBM力推System P5服务器 获甲骨文.
.大侠宝典 :ORACLE 常用第三方软件.

自定义临时表实现及在Oracle Spatial应用

发表日期:2008-2-9



  Oracle 临时表功能介绍:
  
  Oracle中的临时表是全局的,需要在数据库设计时创建完成,而不是程序使用时。每个登陆用户都使用这一个相同的临时表,但互相之间看不到彼此的数据,也就是说临时表是会话独立的。
  
  Oracle 的临时表分为事务型和会话型。
  
  事务型临时表就是指在事务处理过程中插入的记录只在事务提交或回滚之前有效,一旦事务完成,表中的记录便被自动清除。
  
  会话型临时表指临时表中的数据在本次会话期间一直有效,直到会话结束。会话结束后表中针对此次会话的数据会自动清空。
  
  Oracle 临时表的不足之处:
  
  1、不支持lob对象,例如 Spatial 的SDO_GEOMETRY.这也许是设计者基于运行效率的考虑,但实际应用中确实需要此功能时就无法使用临时表了。
  
  2、不支持主外键关系。这意味着临时表
  
  鉴于以上原因,洒家设计了一份自定义的临时表处理办法,使之可以支持Oracle Spatial数据类型和主外键关系,而且不会出现并发冲突。
  
  1、以常规表的形式创建临时数据表的表结构,但要在每一个表的主键中加入一个 SessionID 列以区分不同的会话。(可以有lob列和主外键)
  
  2、写一个用户注销触发器,在用户结束会话的时候删除本次会话所插入的所有记录(SessionID等于本次会话ID的记录)。
  
  3、程序写入数据时,要顺便将当前的会话ID(SessionID)写入表中。
  
  4、程序读取数据时,只读取与当前会话ID相同的记录即可。
  
  功能增强的扩展设计:
  
  1、可以在数据表上建立一个视图,视图对记录的筛选条件就是当前会话的SessionID.
  
  2、数据表中的SessionID列可以通过Trigger实现,以实现对应用层的透明性。
  
  3、高级用户可以访问全局数据,以实现更加复杂的功能。
  
  扩展临时表的优点:
  
  1、实现了与Oracle的基于会话的临时表相同的功能。
  
  2、支持SDO_GEOMETRY等lob数据类型。
  
  3、支持表间的主外键连接,且主外键连接也是基于会话的。
  
  4、高级用户可以访问全局数据,以实现更加复杂的功能。
上一篇:Ora2html--收集Oracle数据库信息 人气:442
下一篇:Create Table建表时,Storage含义(图) 人气:647
浏览全部Oracle教程的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐