Синтаксис создания индексной таблицы:
Здесь
• IOT_TABLENAME — имя создаваемой таблицы;
• COLNAME2…COLNAMEN — наименование колонки;
• PK_COLUMNNAME_NEW — название ключа.
ORGANIZATION INDEX означает что таблица организована по индексу.
Пример создания таблицы, организованной по индексу:
Кластер — это несколько таблиц, которые физически хранятся вместе. Обычно используется в таблицах, участвующих в запросах с объединениями JOIN.
Целью кластеров таблиц является повышение производительности запросов с объединениями для этих таблиц.
При создании кластеризованных таблиц необходимо создать кластер, где будут располагаться эти таблицы.
Создадим кластер для двух таблиц MANc, CITYc, являющихся копиями таблиц MAN, CITY.
Далее создаем две таблицы MANc, CITYc.
Создаем две таблицы MANc, CITYc для кластера MAN_CITY:
Дополнительные действия для таблиц
Для ускорения производительности запросов, для экономии дискового пространства, экономии оперативной памяти используется сжатие таблиц.
В сжатых таблицах выполняются запросы вставки и обновления данных, но на cжатых таблицах эти операции требуют больше ресурсов.
Сжатие таблиц не рекомендуется применять в таблицах при интенсивной вставке и обновлении данных. Наиболее эффективно использовать сжатые таблицы при работе в хранилищах данных.
Лучше всего сжатие работает на таблицах, где изменения данных редки или касаются небольшого числа записей.
Материализованные представления также могут быть сжаты.
Создание сжатой таблицы либо изменение статуса таблицы на сжатый можно осуществить с помощью специальной инструкции COMPRESS.
COMPRESS используется в операторе CREATE TABLE или ALTER TABLE… COMPRESS. Если вы изменяете таблицу, то только новые данные будут после этого подвергаться сжатию. Таким образом, таблица может в одно и то же время содержать в себе как сжатые, так и несжатые данные. При использовании директивы TABLE… UNCOMPRESS новые данные, вносимые в таблицу, не будут сжатыми.
Примеры сжатия таблиц
Создается сжатая таблица для всех операторов вставки и обновления.
Данный запрос покажет все сжатые таблицы в базе данных:
COMPESS_FOR показывает тип сжатия таблицы (для всех операций или только для загрузки в прямом режиме).
Оценка физического размера таблиц, объема дискового пространства
Для оценки дискового пространства, занимаемого таблицей, можно использовать следующие скрипты:
Переименование колонки таблицы.
Для переименования колонки таблицы используется команда:
где
• TABLENAME — имя таблицы;
• OLDCOLUMNNAME — прежнее имя колонки таблицы;
• NEWCOLUMNNAME — новое имя колонки таблицы.
Иногда разработчику приложений может понадобиться переименовать таблицу.
• OldTABLENAME — прежнее имя таблицы;
• NewTABlNAME — новое имя таблицы.
Удаление таблиц
Для удаления таблицы используется оператор
где TABLENAME — имя таблицы.
Можно удалить таблицу, которая принадлежит к схеме текущего пользователя, или же администратор данных должен дать пользователю права на удаление таблиц DROP ANY TABLE.
После выполнения DROP TABLE ORACLE сохраняет ее в корзине (RECYCLE BIN).
Есть возможность восстановить удаленную таблицу с помощью команды:
где TABLENAME — имя таблицы.
Удалить таблицу без возможности восстановления можно с помощью следующей команды:
DROP TABLE TABLENAME PURGE;
где TABLENAME — имя таблицы.
Когда таблица имеет связи с другими таблицами, в данной таблице используются ограничения вторичных ключей и при удалении с помощью данной команды возникает ошибка ограничения, следует использовать следующую команду:
где TABLENAME — имя таблицы
Данная команда игнорирует целостность базы и удалит таблицу.
Команда DROP TABLE имя_таблицы в версии до ORACLE DATABASE 10g удаляет таблицу без возможности восстановления.
При удалении таблицы с помощью команды DROP также удаляются связанные с ней объекты, индексы, триггеры. Исключение составляют представления и синонимы, они не удаляются из базы данных, но становятся нерабочими.
В работе часто встречается ситуация, когда необходимо обновить довольно большой объем данных в таблице. Какие методы можно применить?
Можно вставить необходимые рассчитанные данные в таблицу с другим именем, удалить таблицу, переименовать таблицу с другим именем в таблицу, которую мы удалили.
Читать дальше
Конец ознакомительного отрывка
Купить книгу