oracle临时表的一个使用场景

    在上个项目中碰到这样一种情况,需要从工作流中拿出所有符合要求的任务ID,找出所有对应的业务数据标识(作为流程变量存放在流程中),然后根据业务标识查找业务数据做相应处理。在sql语句中使用了in操作,原本单个区域子系统中在办任务量不会很大,一直正常,一段时间后,各种原因需要所有区域系统合并,数据量大涨,in操作应声报错(超出1000限制)。一番考虑,决定使用临时表替换in操作。

    始终不知道在使用JBPM等工作流产品,与业务数据相关联时,怎样才是最佳方案。不知各位有什么高见?

在Oracle中,可以创建以下两种临时表:

(1) 会话级临时表
CREATE GLOBAL TEMPORARY ( )
ON COMMIT PRESERVE ROWS;

(2) 事务级临时表
CREATE GLOBAL TEMPORARY ( )
ON COMMIT DELETE ROWS;

猜你喜欢

转载自sjjxiao.iteye.com/blog/1606733
今日推荐