怎么查oracle的表分区,oracle如何查询表分区

oracle数据库如何查看表的表分区的信息(每个表分区的名字和所属表空间)

这样SELECT TABLE_NAME,PARTITION_NAME,TABLESPACE_NAME

海城ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为创新互联的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:18980820575(备注:SSL证书合作)期待与您的合作!

FROM USER_TAB_PARTITIONS

注:

USER_TAB_PARTITIONS:可查看分区表的名字、归属表空间以及表的详细分区情况。

USER_PART_TABLES:可查看用户所有的分区表,以及分区方式。

扩展资料:

分区表的作用

Oracle的表分区功能通过改善可管理性、性能和可用性,从而为各式应用程序带来了极大的好处。通常,分区可以使某些查询以及维护操作的性能大大提高。此外分区还可以极大简化常见的管理任务,分区是构建千兆字节数据系统或超高可用性系统的关键工具。

分区功能能够将表、索引或索引组织表进一步细分为段,这些数据库对象的段叫做分区。每个分区有自己的名称,还可以选择自己的存储特性。从数据库管理员的角度来看,一个分区后的对象具有多个段,这些段既可进行集体管理,也可单独管理,这就使数据库管理员在管理分区后的对象时有相当大的灵活性。

但是,从应用程序的角度来看,分区后的表与非分区表完全相同,使用 SQL DML 命令访问分区后的表时,无需任何修改。

oracle11g自动分区

在Oracle10g中,没有定义间隔分区,只能通过范围分区实现间隔分区功能,如果要实现自动创建分区,只能通过创建JOB或者scheduler来实现;而在11g中,Oracle直接提供了间隔分区功能,大大简化了间隔分区的实现。

----注:oracle11g虽然可以自动分区,但是分区的名字不能自定义,对于需要定时删除分区时没法处理,不如通过时间范围来手工分区。详见

create table HIP_LOG_NODE_Part

(

ID                   VARCHAR2(32)         not null,

RECORD_TIME          DATE

)tablespace TB_HIP_LOG_NODE

PARTITION BY RANGE (RECORD_TIME) interval (numtoyminterval(1, 'month'))

STORE IN (TB_HIP_LOG_NODE)

(

partition hip_log_node_partition values less than (to_date('2019-08-01 00:00','yyyy-MM-dd HH24:mi')) tablespace TB_HIP_LOG_NODE

);

1、Oracle11g有间隔分区功能,对于使用Range分区的可以按年,月,日来自动生成分区。

2、2019-08-01前的数据(包含8月份的数据)会放入hip_log_node_partition 分区,8月1日后的数据每月只要有数据,就会自动创建一个分区。也就是从9月开始,开始新建分区。

3、interval函数--将数值按标准换算为日期

numtodsinterval、numtodsinterval函数,将数字转成年月,时分秒

详见:

4、查看表分区 select table_name,partition_name from user_tab_partitions where table_name='INTERVAL_SALES';

5、插入数据再次查看分区,详见:

6、修改分区、合并分区、拆分分区,详见 :

7、创建索引(分区索引、全局索引) :

非分区字段创建主键,则创建主键local索引时必须加上分区字段

ALTER TABLE TEST ADD CONSTRAINT PK_TEST PRIMARY KEY (主键字段,分区字段) USING INDEX LOCAL;

8、oracle 10g创建表分区

9、删除

1.不保留,直接删除:

alter table table_name drop/truncate partition partition_name;

具体用drop还是truncate,得你自己衡量,drop的话原来的分区和数据直接就没有了,truncate的话,只是数据没有了,分区还在。

oracle中怎么查询某张表的分区?

1、首先打开plsql,输入用户名密码,登陆访问表所在的数据库。

2、这就是登陆成功后的界面了。

3、点击左上的新建图标。

4、选择sql Window。

5、右下区域会出现如图的弹窗。

6、在弹窗中,输入查询表的sql语句:select * from 表名。

7、点击左上的执行图标。

8、稍作等待,下区域便会展示要查的表的全部信息。

oracle怎样查询哪些表分区?

如果查询当前用户下得分区表:

select * from user_tables where partitioned='YES'

如果要查询整个数据库中的分区表:

select * from dba_tables where partitioned='YES'

如果要查询某个用户下得分区表:

select * from dba_tables where partitioned='YES' and owner='ABCDEFG'

其中ABCDEFG为用户名


当前标题:怎么查oracle的表分区,oracle如何查询表分区
文章转载:http://ybzwz.com/article/hopioe.html