【问题标题】:If I alter a table to add a partition will I lose data in Oracle SQL?如果我更改表以添加分区,我会丢失 Oracle SQL 中的数据吗?
【发布时间】:2017-04-20 10:13:51
【问题描述】:

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

【问题讨论】:

    标签: sql oracle partition


    【解决方案1】:

    不,你不会丢失数据

    您可以创建列表分区并在默认分区上展开它

    例如,如果你的part是日期:

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

    【讨论】:

    • 谢谢,默认分区,是指最后一个分区吗?
    • 你可以分割你的分区
    【解决方案2】:

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

    EXCHANGE 分区命令可以将数据从一个表分区移动到另一个表,反之亦然。

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-10-30
      • 2021-02-09
      • 2012-02-26
      • 1970-01-01
      • 1970-01-01
      • 2019-06-14
      • 1970-01-01
      • 2011-10-08
      相关资源
      最近更新 更多