临时表和视图的作用域和生命周期

时间:2021-12-07 02:08:18
v_sql:='CREATE TEMPORARY TABLE ColToRow('||
  'dept_name varchar2(50),'|| --部门名称
  'new_alarm integer default 0,'||--新警情数量
    'disposed integer default 0,'||--已经受理的数量
    'fbk_ontime integer default 0,'||--按时反馈的数量
    'fbk_late integer default 0,'||
    'finish_ontime integer default 0,'
    'finish_late integer default 0)';
--创建临时表的sql如上
1.
对非全局的临时表:
oracle的临时表和mssql的临时表的作用域和生命周期是不是一样的呢?mssql只对创建它的连接(会话)可用,其他会话可以创建相同名字的临时表而不会互相冲突 

2.oracle是否存在和临时表在作用域和生命周期都差不多的视图??
我想希望能有某种视图只对创建它的会话才是可用的,其他会话也可以创建相同名字的临时视图,没有的话要怎么样才可以实现?(过一段时间,可能会自我嘲笑问这样的问题-_-)

14 个解决方案

#1


ORACLE的临时表分为会话级和事务级

#2


加上ON COMMIT PRESERVE ROWS

#3


呵呵
我觉得加ON COMMIT DELETE ROWS更符合我的要求

#4


--ON COMMIT DELETE ROWS 说明临时表是事务指定,每次提交后ORACLE将截断表(删除全部行) 

  --ON COMMIT PRESERVE ROWS 说明临时表是会话指定,当中断会话时ORACLE将截断表。

截断表后会不会删除临时表?还是要我用代码drop table来删除?

#5


不会删除表

只是其他会话看不到你插入的数据

但是我想问下你 你用CREATE TEMPORARY TABLE可以创建临时表  不加GLOBAL吗?

我用的是9i

#6


哦,要的,我漏了.
所有会话不用了临时表系统会自动删除它的,要不临时表就没有了"临时"的意义.

---只是其他会话看不到你插入的数据
现在想讨论一下这种情况:
当一个会话插入了一批记录,然后select * from Temp返回了这批记录给前台
然后另外一个会话也插入了一批记录,然后也进行select * from Temp返回的结果也只能是当前会话插入的吗?第一个会话插入的记录不会查出来吗?

如果这样的话就求神拜佛了,我处理起来会方便好多

#7


PUB里面已经回复给你了

#8


晕,pub里你的nickname是什么?

#9


哦,也跟我一样,同一个名字

#10


还是love2008^_^

#11


呵呵   NinGoo还是那个NinGoo

呵呵

#12


哇,这么有缘分哦,糟糕的是都是男的

#13


我跟你们两个发消息去

#14


我晕,结贴报错

#1


ORACLE的临时表分为会话级和事务级

#2


加上ON COMMIT PRESERVE ROWS

#3


呵呵
我觉得加ON COMMIT DELETE ROWS更符合我的要求

#4


--ON COMMIT DELETE ROWS 说明临时表是事务指定,每次提交后ORACLE将截断表(删除全部行) 

  --ON COMMIT PRESERVE ROWS 说明临时表是会话指定,当中断会话时ORACLE将截断表。

截断表后会不会删除临时表?还是要我用代码drop table来删除?

#5


不会删除表

只是其他会话看不到你插入的数据

但是我想问下你 你用CREATE TEMPORARY TABLE可以创建临时表  不加GLOBAL吗?

我用的是9i

#6


哦,要的,我漏了.
所有会话不用了临时表系统会自动删除它的,要不临时表就没有了"临时"的意义.

---只是其他会话看不到你插入的数据
现在想讨论一下这种情况:
当一个会话插入了一批记录,然后select * from Temp返回了这批记录给前台
然后另外一个会话也插入了一批记录,然后也进行select * from Temp返回的结果也只能是当前会话插入的吗?第一个会话插入的记录不会查出来吗?

如果这样的话就求神拜佛了,我处理起来会方便好多

#7


PUB里面已经回复给你了

#8


晕,pub里你的nickname是什么?

#9


哦,也跟我一样,同一个名字

#10


还是love2008^_^

#11


呵呵   NinGoo还是那个NinGoo

呵呵

#12


哇,这么有缘分哦,糟糕的是都是男的

#13


我跟你们两个发消息去

#14


我晕,结贴报错