oracle分割槽及分割槽索引partition_partition index_維護(五)_快捷方法

wisdomone1發表於2012-12-30
  自其它博友的文章得知,對於分割槽表,建立分割槽索引,可不用指定local之後的分割槽名字,而由oracle自動指派.
是否果真如此,自己動手,豐衣足食.而且增加下記憶.豈不更好.
閒言少敘,入正題:
----沿用之前測試的分割槽表t_test_partition_1
----查詢分割槽表的分割槽索引資訊
SQL> select index_name,partition_name from user_ind_partitions where index_name
in (select index_name from user_indexes where table_name='T_TEST_PARTITION_1');
INDEX_NAME                     PARTITION_NAME
------------------------------ ------------------------------
PK_T_TEST_PARTITION_1_ID       P3
PK_T_TEST_PARTITION_1_ID       P4
PK_T_TEST_PARTITION_1_ID       P5
PK_T_TEST_PARTITION_1_ID       P1
IDX_T_TEST_PARTITION_1_ID      P2_IDX2
IDX_T_TEST_PARTITION_1_ID      P3_IDX3
IDX_T_TEST_PARTITION_1_ID      P4_IDX4
IDX_T_TEST_PARTITION_1_ID      P5_IDX5
IDX_T_TEST_PARTITION_1_ID      P1_OLD
PK_T_TEST_PARTITION_1_ID       P2
已選擇10行。
---刪除分割槽索引
SQL> drop index pk_t_test_partition_1_id;
索引已刪除。
SQL> drop index idx_t_test_partition_1_id;
索引已刪除。
--再次查詢分割槽索引,已經刪除
SQL> select index_name,partition_name from user_ind_partitions where index_name
in (select index_name from user_indexes where table_name='T_TEST_PARTITION_1');
未選定行
----查詢分割槽表的分割槽數量,對於分割槽索引,其數量和分割槽的分割槽數量是相同的
SQL> select table_name,partition_name from user_tab_partitions where table_name=
'T_TEST_PARTITION_1';
TABLE_NAME                     PARTITION_NAME
------------------------------ ------------------------------
T_TEST_PARTITION_1             P1_OLD
T_TEST_PARTITION_1             P2
T_TEST_PARTITION_1             P3
T_TEST_PARTITION_1             P4
T_TEST_PARTITION_1             P5
----建立分割槽索引,但在local之後未用partition 子句
SQL> create index idx_t_test_partition_1_reqtime on t_test_partition_1(reqtime)
local;
索引已建立。

----查詢建立的分割槽索引是否成功,與分割槽表的分割槽數量相同嗎,果真相同
SQL> select index_name,partition_name from user_ind_partitions where index_name
in (select index_name from user_indexes where table_name='T_TEST_PARTITION_1');
INDEX_NAME                     PARTITION_NAME
------------------------------ ------------------------------
IDX_T_TEST_PARTITION_1_REQTIME P1_OLD
IDX_T_TEST_PARTITION_1_REQTIME P3
IDX_T_TEST_PARTITION_1_REQTIME P2
IDX_T_TEST_PARTITION_1_REQTIME P4
IDX_T_TEST_PARTITION_1_REQTIME P5

--小結:1,create index local和create index local partition語句的作用相同,前者更快捷方便
       2,前者語句建立的分割槽索引的每個分割槽的名稱與分割槽表的分割槽名稱是相同的,
         而create index local partition在此就更靈活一點了,可以指定與表分割槽的分割槽名稱不
         一樣的名稱,大家根據維護的要求來吧

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/9240380/viewspace-751892/,如需轉載,請註明出處,否則將追究法律責任。

相關文章