如果我改变一个表来添加一个分区,我会丢失Oracle SQL中的数据吗?

时间:2016-12-05 21:56:41

标签: sql oracle partition

我不确定是否要更改表来创建新分区,因为我担心会丢失数据。如果Oracle SQL DB中的表已经被分区但我添加了一个新分区,那么表中的现有数据是否会被删除?

2 个答案:

答案 0 :(得分:1)

不,你不会丢失数据

您可以创建列表分区并在默认分区

上展开它

例如,如果你的分区是日期:

alter table your_table split partition PDEFAULT values(TO_DATE('20161206','yyyymmdd')) into ( partition P20161206,partition PDEFAULT)

答案 1 :(得分:1)

唯一可以销毁数据的ALTER TABLE分区命令是DROP和TRUNCATE。

EXCHANGE partition命令可以将数据从表分区移动到不同的表,反之亦然。

ADD,MOVE,COALESCE,RENAME,SPLIT和MERGE不会更改表的数据,尽管COALESCE,SPLIT和MERGE可以更改存储数据的分区或子分区。