Если мы используем инструкцию ALTER TABLE RENAME PARTITION для переименования существующих разделов в таблице Oracle, нужно ли воссоздать локальные секционированные индексы с новыми именами разделов?Переименование разделов в ORACLE
4
A
ответ
7
Нет, переименование разделов не влияет на локально разделенные индексы. Вы можете легко проверить, что:
--create table
CREATE TABLE t (
c1 DATE,
c2 NUMBER(3))
partition by range (c1) (
partition t_nov values less than (
to_date('01-12-2009 00:00:00', 'DD-MM-YYYY HH24:MI:SS')
),
partition t_dec values less than (
to_date('01-01-2010 00:00:00', 'DD-MM-YYYY HH24:MI:SS')
)
)
/
--create index
create index idx_t on t (c1) local (partition t_nov, partition t_dec);
--insert some rows
insert into t values (sysdate, 1);
insert into t values (sysdate, 1);
insert into t values (sysdate, 1);
insert into t values (sysdate, 1);
insert into t values (sysdate, 1);
insert into t values (sysdate, 1);
insert into t values (sysdate, 1);
insert into t values (sysdate, 1);
insert into t values (sysdate, 1);
insert into t values (sysdate, 1);
--gather statistics
exec dbms_stats.gather_table_stats('SYSTEM', 'T');
--set autotrace on, to determine that index is used
set autotrace on
--select indexed column
select c1 from t where c1 < sysdate+1;
--------------------------------------------------------------------------------------------------
| Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time | Pstart| Pstop |
--------------------------------------------------------------------------------------------------
| 0 | SELECT STATEMENT | | 11 | 88 | 1 (0)| 00:00:01 | | |
| 1 | PARTITION RANGE ITERATOR| | 11 | 88 | 1 (0)| 00:00:01 | 1 | KEY |
|* 2 | INDEX RANGE SCAN | IDX_T | 11 | 88 | 1 (0)| 00:00:01 | 1 | KEY |
--------------------------------------------------------------------------------------------------
--rename partition
alter table t rename partition t_dec to t_december;
Table altered.
select c1 from t where c1 < sysdate+1;
--------------------------------------------------------------------------------------------------
| Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time | Pstart| Pstop |
--------------------------------------------------------------------------------------------------
| 0 | SELECT STATEMENT | | 11 | 88 | 1 (0)| 00:00:01 | | |
| 1 | PARTITION RANGE ITERATOR| | 11 | 88 | 1 (0)| 00:00:01 | 1 | KEY |
|* 2 | INDEX RANGE SCAN | IDX_T | 11 | 88 | 1 (0)| 00:00:01 | 1 | KEY |
--------------------------------------------------------------------------------------------------
Индекс по-прежнему используется, после переименования раздела
+0
Спасибо за сверкающую демонстрацию. Цените свое время. –
2
Переименование разделов не влияет на локально разделенные индексы, поэтому вам не нужно будет перестраивать индексы.
+0
Спасибо за ответ. –
Смежные вопросы
- 1. Переименование имен разделов в UITableView в Swift
- 2. Разделение разделов CSS разделов
- 3. DocumentDB: Список используемых разделов разделов
- 4. Искры разделов: создание разделов RDD, но не разделов Hive
- 5. Java: переименование файлов - неправильное переименование файлов
- 6. Таблица разделов разделов по существующему полю?
- 7. Переименование столбцов в Python
- 8. Переименование файлов в папке
- 9. Переименование папок в TFS
- 10. Переименование поля в объекте
- 11. Переименование каталога в SVN
- 12. Переименование класса в ретроспективе?
- 13. Переименование переменной в PowerShell
- 14. Пакетное переименование в окнах
- 15. Переименование розетки в Swift
- 16. переименование установки в C#
- 17. Переименование серии в pandas
- 18. Переименование файлов в цикле
- 19. Переименование пакетов в Затмении
- 20. Отключить переименование в dotfuscator
- 21. Переименование классов в iOS
- 22. Переименование файла в NERDTREE
- 23. Переименование псевдонима в таблице
- 24. Переименование файла в Java
- 25. Переименование ZipFile в Python
- 26. Переименование файлов в python
- 27. Переименование ForeignKey в models.py
- 28. Переименование файла в R
- 29. Переименование localstorage в браузере
- 30. Переименование каталога в C#
Позвольте мне знать, если я не предоставили достаточно подробные сведения в этом вопросе. –