首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Oracle 临时的使用

Oracle中,临时分为会话级别(session)和事务级别(transaction)两种。...会话级的临时在整个会话期间都存在,直到会话结束;事务级别的临时数据在transaction结束后消失,即commit/rollback或结束会话时,会清除临时数据。  ...1、事务级临时  on commit delete rows;      当COMMIT的时候删除数据(默认情况)   2、会话级临时  on commit preserve rows;  当COMMIT...的时候保留数据,当会话结束删除数据 1.会话级别临时 会话级临时是指临时中的数据只在会话生命周期之中存在,当用户退出会话结束的时候,Oracle自动清除临时中数据。...3.oracle临时创建完就是真实存在的,无需每次都创建。 若要删除临时可以: truncate table 临时名; drop table 临时名;

81910
您找到你想要的搜索结果了吗?
是的
没有找到

Oracle临时的使用

,所以我们就会引入一个临时的概念,分步把要组合的数据插入到临时中,再用select查询临时输出数据。...Oracle临时介绍 Oracle临时temporary tables,一般我们分为两种临时,分别的会话级的临时和事务级的临时。...---- 1.会话级临时 会话级临时是指临时中的数据只在会话生命周期之中存在,当用户退出会话结束的时候,Oracle自动清除临时中数据。...事务级临时是指临时中的数据只在事务生命周期中存在。...但是在Oracle里面因为有会话级和事务级临时,用完后会自动清空等,不建议每次都Drop然后再Create,主要原因也是我在测试的过程中发现用到Drop临时时报过错了,当时的错误没记下来,后来就是变为没有就创建

3K20

Oracle 11g 临时空间管理

默认情况下,为每个新的 Oracle 数据库安装创建一个名为 TEMP 的临时空间。也可以使用 create TABLESPACE 语句创建额外的临时空间。...临时空间用于存储以下内容: 中间结果排序; 临时临时索引; 临时 Lob; 临时 B tree Oracle 临时空间作用 Oracle 临时空间主要用来做查询和存放一些缓冲区数据。...网络上有人猜测在磁盘空间的分配上,oracle 使用的是贪心算法,如果上次磁盘空间消耗达到 1GB,那么临时空间就是 1GB。也就是说当前临时空间文件的大小是历史上使用临时空间最大的大小。.../orcl/temp02.dbf' resize 100M; 二、临时空间组 临时空间组是 ORACLE 10g 引入的一个新特性,它是一个逻辑概念,不需要显示的创建和删除。...收缩临时空间是 ORACLE11g 新增的功能。

2.1K41

36 | 临时临时

临时,可以使用各种引擎类型 。如果是使用 InnoDB 引擎或者 MyISAM 引擎的临时,默认是MyISAM 引擎,写数据的时候是写到磁盘上的。当然,临时也可以使用 Memory 引擎。...临时特点: 建表语法是create temporary table 一个临时只能被创建它的session访问,对其他线程不可见。 临时和普通可以同名。...同一个session内有临时和普通的时候,show crete语句、增删改查访问的是临时。 show tabls命令不显示临时。...由于临时只能被创建它的 session 访问,所以在这个 session 结束的时候,会自动删除临时。...这种情况下,创建临时的语句会传到备库执行,因此备库的同步线程就会创建这个临时。主库在线程退出的时候,会自动删除临时,但是备库同步线程是持续在运行的。

1.9K10

Oracle中对临时空间执行shrink操作

Oracle一个诡异的临时空间不足的问题》中提到对临时空间执行shrink space的操作,以前一直理解只有对表能做shrink space的操作,但从官方文档看,11g开始,就可以对临时空间执行相同的操作...可以简单测测,当前的临时空间数据文件大小是512MB, SQL> !...视图,可以看到临时空间的使用情况, SQL> select file#,name,bytes/1024/1024 MB from v$tempfile; FILE# NAME....dbf -rw-r----- 1 oracle oinstall 2.0M Jul 29 16:39 temp01.dbf 同样支持对临时数据文件的收缩,先增加个临时空间数据文件, SQL> alter...临时空间已经进行了收缩, SQL> select file#,name,bytes/1024/1024 MB from v$tempfile; FILE# NAME

45830

Oracle中对临时空间执行shrink操作

Oracle一个诡异的临时空间不足的问题》中提到对临时空间执行shrink space的操作,以前一直理解只有对表能做shrink space的操作,但从官方文档看,11g开始,就可以对临时空间执行相同的操作...可以简单测测,当前的临时空间数据文件大小是512MB, SQL> !...视图,可以看到临时空间的使用情况, SQL> select file#,name,bytes/1024/1024 MB from v$tempfile; FILE# NAME....dbf -rw-r----- 1 oracle oinstall 2.0M Jul 29 16:39 temp01.dbf 同样支持对临时数据文件的收缩,先增加个临时空间数据文件, SQL> alter...临时空间已经进行了收缩, SQL> select file#,name,bytes/1024/1024 MB from v$tempfile; FILE# NAME

43120

获取Oracle临时空间的使用率

我们在日常Oracle维护中,可能某个SQL语句很慢,有大量的排序操作,这时需要确认下临时文件的使用情况,今天就讲如何直观的在前端显示该结果 注意:该功能自动查找临时空间名称并计算使用率,无需输入temp...空间名称 ---- 开发环境 操作系统:CentOS 7.3 Python版本 :2.7 Django版本: 1.10.5 操作系统用户:oracle ---- 建立页面的步骤 ?...则执行函数gettempusage获取临时空间的使用率,详情看具体代码 5....函数通临时空间的使用率,详情看具体代码 monitor/command/getoraclecommandresult.py def gettempusage(cursor): fp=open(...) fp.close() row=s.fetchone() return row[0] ---- gettempusage.sql 这个SQL是查询Oralce数据库的temp空间使用率

87430

MySQL 临时

数据保存在内存中,系统重启时会被清除,但结构存在 临时的引擎可以使用各种类型,临时的建表语法是create temporary table ... engine=xxx,如果使用的是InnoDB...临时的特点 临时只对创建它的Session访问,对其他线程不可见 临时可以和普通同名 如果一个Session中有同名的临时或者普通的时候,show create语句,增删改查语句访问的是临时...show tables命令不显示临时 临时的数据会在Session意外或主动断开时删除 临时的应用 复杂查询的优化借助临时 分库分查询 分库分中应用临时 分库分就是我们把一个大拆开分到不同的数据库实例上...在库名和名的基础上还加入了server_id和thread_id 每个线程都维护自己的临时表链表,线程在操作时,会先遍历临时表链表,如果在临时表链表中有优先操作临时,如果没有再操作普通,当线程退出时...上述创建临时的语句会被同步到备库执行,因此备库的同步线程也会创建这个临时

6.3K30

MySQL 临时

MySQL 临时在我们需要保存一些临时数据时是非常有用的。临时只在当前连接可见,当关闭连接时,Mysql会自动删除并释放所有空间。...MySQL临时只在当前连接可见,如果你使用PHP脚本来创建MySQL临时,那每当PHP脚本执行完成后,该临时也会自动销毁。...如果你使用了其他MySQL客户端程序连接MySQL数据库服务器来创建临时,那么只有在关闭客户端程序时才会销毁临时,当然你也可以手动销毁。...如果你退出当前MySQL会话,再使用 SELECT命令来读取原先创建的临时数据,那你会发现数据库中没有该的存在,因为在你退出时该临时已经被销毁了。...---- 删除MySQL 临时 默认情况下,当你断开与数据库的连接后,临时就会自动被销毁。当然你也可以在当前MySQL会话使用 DROP TABLE 命令来手动删除临时

4.2K00

【DB笔试面试517】在Oracle中,什么是临时?它有哪些分类?有关临时需要注意什么?

♣ 题目部分 在Oracle中,什么是临时?它有哪些分类?有关临时需要注意什么?...,那么这个时候考虑在Oracle中创建“临时”。...相对应的,在Oracle数据库中,还有一种类型的,叫做临时。这个临时跟永久最大的区别就是中的数据不会永远地存在。...Oracle临时创建之后基本不占用空间,如果没有指定临时(包括临时的索引)存放的空间,那么插入到临时的数据是存放在Oracle系统的默认临时空间中(TEMP),一个系统可能有多个临时空间...(二)临时的分类 Oracle数据库根据临时的性质不同,可以分为事务临时(ON COMMIT DELETE ROWS)与会话临时(ON COMMIT PRESERVE ROWS)。

1.1K20

TSQL–临时变量

临时适用数据量较大的情况,因为临时可以建立索引 2. 变量适用于数据较小的情况,变量只能在定义时创建约束(PRIMARY KEY/UNIQUE)从而间接建立索引 3....临时是事务性的,数据会随着事务回滚而回滚,变量是非事务性的 4. 临时变量都存放在内存中,当内存存在压力时才放入到硬盘 5....临时的创建删除会导致存储过程重编译,而在存储过程中使用变量不会引发重编译 8. 用户定义的临时对象(临时、全局临时变量、游标)都优先存放到内存 9....临时变量在数据操作时产生的日志远远低于普通 10.除非使用 DROP TABLE 显式删除临时,否则临时将在退出其作用域时由系统自动删除: 1)当存储过程完成时,将自动删除在存储过程中创建的本地临时...换言之,当创建全局临时的会话结束时,最后一条引用此的 Transact-SQL 语句完成后,将自动删除此

70510

Oracle一个诡异的临时空间不足的问题

一位朋友说他们压测的应用,前几天都正常,昨天执行的时候,报了如下错误,但是今天没出现,DBA说他们某条SQL占用临时空间太多了,昨天还给扩了10个G的临时空间容量, ORA-01652: 无法通过...猜测1:SQL导致临时空间不足?...猜测2:用户使用了其他的临时空间? 因为可以给用户指定不同的临时空间,是否有可能该用户未使用默认的,而扩容的是默认的临时空间?...通过检索dba_users,该用户使用的就是默认的临时空间TEMP,而且该数据库就只有一个临时空间。 猜测3:临时空间即使扩容了,确实不够?...但是,既然增加了10G的空间了,为什么开始检索的时候,临时空间容量只有300MB?

68520

收缩临时空间

与之相关的内容参考: Oracle 空间与数据文件 临时空间的管理与受损恢复 Oracle 彻底 kill session 一、临时空间何时释放         检索数据的会话游标关闭时,...-->如果此时过大的临时空间为缺省的临时空间,则必须将缺省的临时空间设置为新的临时空间之后 SQL> select property_name,property_value from database_properties...-->过大临时空间上的那些用户需要迁移到新建的临时空间 -->查询dba_users视图查询哪些用户位于过大的临时空间之上 -->并使用下面的命令将其切换到新的临时空间 alter user...3、通过重启数据库,临时空间所耗用的大小有时候并不能缩小。 4、在Oracle 11g之前一般是通过创建中转临时空间来达到缩小的目的。...,因此如果系统缺省的临时空间过大删除前应该新置一个系统缺省的临时空间。

3K30

37 | 内部临时

可以看到实用了临时(Using temporary)。 这个语句的执行流程是这样的: 创建一个内存临时,这个临时只有一个整型字段 f,并且 f 是主键字段。...从临时中按行取出数据,返回结果,并删除临时,结果中包含两行数据分别是 1000 和 999。 ?...至于为什么0在前面,是因为用了磁盘临时,id取模 排序后存入临时临时的数据应该是0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,2,… 从这个磁盘临时读取数据汇总的结果的顺序就是...group by 优化方法 – 索引 不论是使用内存临时还是磁盘临时,group by 逻辑都需要构造一个带唯一索引的,执行代价都是比较高的。...是有序数组,临时是二维结构; 如果执行逻辑需要用到二维特性,就会优先考虑使用临时

72310
领券