查看表空间
查看表空间中数据的存放位置
select name from v$datafile;
-- 查看表空间中数据的存放位置,但不包括表空间属于某用户。
-- 解析:select 查看
-- name 字段
-- from 从
-- v$datafile 数据文件视图
注解:v$datfile:是Oracle系统视图。表明为 v$ 的表示是Oracle 系统视图,比如v$log,v$session等。
查看表空间中数据存放位置和属于某用户
select * from dba_data_files;
-- 查看表空间存放位置及属于某用户。
-- 解析:select 查看
-- * 字段
-- from 从
-- dba_data_files 数据库文件表
查看表空间详细信息
select * from dba_tablespaces;
-- 查看所有表空间的详细信息
-- 解析:select 查看
-- * 字段
-- from 从
-- dba_tablespaces 表空间的信息
查看某表属于某个表空间
select table_name,tablespace_name from dba_tables;
-- 可以查看到某表,属于某表空间的。
-- 解析:select 查看
-- table_name,tablespace_name 表名称,表空间名称
-- from 从
-- dba_tables 所有表的空间属性 (user_tables:当前用户管理的表,的表空间)
查看指定表(表名:B1)属于某表空间的
select table_name,tablespace_name from dba_tables where tables_name='B1';
-- 查看表B1属于那个表空间的
-- 可以查看到某表,属于某表空间的。
-- 解析:select 查看
-- table_name,tablespace_name 表名称,表空间名称
-- from 从
-- dba_tables 所有表的空间属性 (user_tables:当前用户管理的表,的表空间)
-- where 条件
-- tables_name='B1' 表名称等于B1的行
表空间添加、修改
创建表空间
create tablespace "app_data" datafile 'D:\ORACLE\PRODUCT\ORAEDATA\EDWTEST\APP03.DBF' size 500M;
-- 创建一个表空间app_data大小为500M
表空间增加数据文件
alter tablepace app_data add datafile 'D:\ORACLE\PRODUCT\ORAEDATA\EDWTEST\APP03.DBF' size 500M;
-- 表空间app_data添加一个数据文件,大小为500M。
-- 解析:
-- alter 改变
-- tablespace 表空间
-- app_data 表空间名称
-- add datafile 添加数据文件
-- 'D:\ORACLE\PRODUCT\ORAEDATA\EDWTEST\APP03.DBF' 数据文件的位置
-- size 500M 文件大条件
增加表空间数据文件,并且允许数据文件自动增长
alter tablespace app_data add datafile 'D:\ORACLE\PRODUCT\ORAEDATA\EDWTEST\APP03.DBF' size 500M autoextend on next 50M maxsize 5000M;
-- 表空间app_data添加一个数据文件,大小500M的,数据上线后一次增长50M,直到涨到5000M不在增长。
-- 表空间app_data添加一个数据文件,大小为500M。
-- 解析:
-- alter 改变
-- tablespace 表空间
-- app_data 表空间名称
-- add datafile 添加数据文件
-- 'D:\ORACLE\PRODUCT\ORAEDATA\EDWTEST\APP03.DBF' 数据文件的位置
-- size 500M 文件大条件
-- autoextend on next 50M 下一个自动扩展50M
-- maxsize 5000M 最大5000M(最大尺寸)
修改已存在的数据文件的大小
alter database datafile 'D:\ORACLE\PRODUCT\ORAEDATA\EDWTEST\APP03.DBF' resize 5000M;
-- 重新修改APP03.DBF大小为5000M。
-- 解析:
-- alter 改变
-- database datafile 数据库数据文件
-- D:\ORACLE\PRODUCT\ORAEDATA\EDWTEST\APP03.DBF 数据文件位置
-- resize 5000M 调整大小 5000M
允许已经存在的数据文件自动增长
alter database datafile 'D:\ORACLE\PRODUCT\ORAEDATA\EDWTEST\APP03.DBF' autoextend on next 50M maxsize 5000M;
-- 允许存在的数据文件自动增长,每次50M,一共大小增长到5000M大小。
-- 重新修改APP03.DBF大小为5000M。
-- 解析:
-- alter 改变
-- database datafile 数据库数据文件
-- D:\ORACLE\PRODUCT\ORAEDATA\EDWTEST\APP03.DBF 数据文件位置
-- autoextend on next 50M 下一个自动扩展50M
-- maxsize 5000M 最大5000M(最大尺寸)
关闭表空间自增长
alter database datafile 'D:\ORACLE\PRODUCT\ORAEDATA\EDWTEST\APP03.DBF' autoextend off;
–删除空的表空间,但是不包含物理文件
drop tablespace tablespace_name;
–删除非空表空间,但是不包含物理文件
drop tablespace tablespace_name including contents;
–删除空表空间,包含物理文件
drop tablespace tablespace_name including datafiles;
–删除非空表空间,包含物理文件
drop tablespace tablespace_name including contents and datafiles;
–如果其他表空间中的表有外键等约束关联到了本表空间中的表的字段,就要加上CASCADE CONSTRAINTS
drop tablespace tablespace_name including contents and datafiles CASCADE CONSTRAINTS;