(原創)INTERVAL分區表與RANGE分區表相互轉化


1.RANGE分區表轉化為INTERVAL分區表

如果有MAXVALUE分區,則先刪除,然后再用SET INTERVAL設置為自動分區間隔
ALTER TABLE trdfat_profit DROP PARTITION P_MAX;
ALTER TABLE trdfat_profit SET INTERVAL(1000000);
ALTER TABLE trdfat_profit SET INTERVAL (NUMTODSINTERVAL(1,'DAY')) --NUMTODSINTERVAL常用的單位有 ('day','hour','minute','second')
ALTER TABLE trdfat_profit SET INTERVAL (numtoyminterval(1,'month')); --numtoyminterval常用的單位有'year','month'

SELECT TABLE_NAME, PARTITIONING_TYPE, INTERVAL 
FROM dba_PART_TABLES
WHERE TABLE_NAME = 'TRDFAT_PROFIT';

2.INTERVAL分區表可以方便的轉化為RANGE分區表
ALTER TABLE trdfat_profit SET Interval();
ALTER TABLE trdfat_profit ADD PARTITION p_max VALUES LESS THAN (MAXVALUE);

3.interval分區的特點
1.由range分區派生而來
2.以定長寬度創建分區(比如年、月、具體的數字(比如100、500等))
3.分區字段必須是number或date類型
4.必須至少指定一個range分區(永久分區)
5.當有記錄插入時,系統根據需要自動創建新的分區和本地索引
6.已有的范圍分區可被轉換成間隔分區(通過ALTER TABLE SET INTERVAL選項完成)
7.Interval Partitioning不支持支持索引組織表
8.在Interval Partitioning表上不能創建domain index


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM