暂无图片
Oracle 查询生成一个临时表#A啊,需要创建吗?
我来答
分享
黎琛
2022-06-28
Oracle 查询生成一个临时表#A啊,需要创建吗?
暂无图片 5M

Oracle 查询生成一个临时表#A啊,需要创建吗?

我来答
添加附件
收藏
分享
问题补充
2条回答
默认
最新
薛晓刚

没看懂,是说在temp表空间中生成的?还是自己创建一个全局临时表?后者是要自己创建的

暂无图片 评论
暂无图片 有用 0
打赏 0
黎琛
题主
2022-06-28
自己创建全局临时表
刘贵宾

全局临时表有两种模式:

一种是基于会话级别的,会话与会话之间的数据是隔离的,当会话段掉,数据就会清空;一种是基于事务级别的,当执行commit或者rollback 数据将清除,全局临时表使用的是临时表空间的位置。临时表即使当前会话已经提交了(commit)数据,别的会话也看不到它的数据。对于临时表,不存在多用户并发的问题,因为一个会话不会因为使用一个临时表而阻塞另一个会话。即使我们“锁住”了临时表,也不会妨碍其他会话使用临时表。

创建基于session的全局临时表(退出session该表记录就会自动清空):

create global temporary table

表名

(

字段名 类型 是否为空,

字段名 类型 是否为空

)

on commit preserve rows;

创建基于事务的全局临时表(commit提交后,不等退出session,在该表记录就会自动清空):

create global temporary table

表名

(

字段名 类型 是否为空,

字段名 类型 是否为空

)

on commit delete rows。



暂无图片 评论
暂无图片 有用 0
打赏 0
回答交流
Markdown


请输入正文
提交
相关推荐
如何找到登录Oracle数据库失败的客户端IP
回答 3
已采纳
1、可以通过以下触发器,将登录失败的IP来源记录到alertSID.log日志中;CREATEORREPLACETRIGGERlogondeniedtoalerttestAFTERservererro
MySQL数据同步到oracle 数据库,一般采用什么方案?
回答 2
oceanbase数据库的oma工具
资深DBA为什么要定制统计信息收集策略?
回答 3
已采纳
优化器在计算执行计划的成本时依赖于统计信息,如果没有收集统计信息,或者是统计信息过期了,那么优化器就会出现严重偏差,从而导致性能问题,因此要确保统计信息准确性。虽然数据库自带有JOB每天晚上会定时收集
ORA-00600: 内部错误代码, 参数: [krctcr_4], [349156876], [349177514]
回答 3
上传附件:node2.rar
如何将有结构的数据,转换成key-value
回答 4
好的,谢谢老师,我百度看看
Oracle sys 账号下的 xxx$ 表都没有索引吗?
回答 4
XXX$表也需要做表分析,所以肯定是有索引的
Oracle dg备库restore后 启用实时同步,但是日志没应用
回答 3
有gap解决gap,如果是要开启ADG检查一下standbyredolog
如何分辨某个用户是从哪台机器登陆ORACLE的?
回答 1
已采纳
–使用sys执行createorreplacetriggeronlogontriggerafterlogonondatabasebegindbmsapplicationinfo.setclientin
安装Oracle11g的时候没有插网线,现在插上网线,监听起不来了,如何处理?
回答 6
不接网线的时候好用吗?
每个数据文件最多只能包含2^22-1个数据块
回答 3
每个数据块头部,会有4个字节记录数据块的位置,也就是32位,对于smallfile表空间,前面10位表示相对文件号,后面22位表示块号,最大也就是22个1来表示最大的块id。也就是2^221