16.3 临时表空间的管理
在Oracle 11g数据库中除了上面讲述的表空间外,还有临时表空间,临时表空间主要是用来保存临时的数据信息的。本节将讲述如何创建和查询临时表空间以及在使用临时表空间时容易出现的问题。
16.3.1 建立临时表空间
临时表空间一般是指在数据库中存储数据,当内存不够时写入的空间,这个空间并不像一般的表空间,当执行完对数据库的操作后,该空间的内容自动清空。临时表空间经常会在使用一些操作时使用,如连接没有索引的两个表,查询数据时都会用到。建立临时表空间也可以在企业管理器中直接创建或在SQL*Plus中使用语句创建。下面分别讲解使用这两种方式创建临时表空间。
1.在企业管理器中创建临时表空间
在企业管理器中创建临时表空间与创建一般的表空间的方法基本相同。
【示例13】在企业管理器中创建临时表空间TEMPTEST
在创建表空间时类型选为【临时】选项,如图16.23所示,此时创建的就是临时表空间。同时,也可以把【设置为默认临时表空间】复选框选中,该临时表空间就成为默认的临时表空间。创建了临时表空间后,在表空间页面中就显示出本次创建的TEMPTEST表空间的类型就是TEMPORARY,如图16.24所示。
图 16.23 创建临时表空间
图 16.24 查看表空间的类型
2.使用SQL*Plus创建临时表空间
只要掌握了前面的创建一般表空间的语法,学习创建临时表空间的语法还是比较容易的。创建临时表空间的语法如下:
CREATE TEMPORARY TABLESPCE tablespace_name
TEMPFILE'filename.dbf'SIZE
【示例14】在SQL*Plus中创建临时表空间temptable
下面使用上面的语句创建一个名为temptable的临时表空间。具体操作如图16.25所示。
图 16.25 创建临时表空间
设置临时表空间为默认表空间的语法如下:
ALTER DATABASE DEFAULT TEMPORARY TABLESPACE tablespace
【示例15】设置默认表空间
下面把上面创建的临时表空间temptable设置成默认的临时表空间。具体操作如图16.26所示。
图 16.26 设置默认临时表空间