DDL и объекты схемы — Итоги

Объекты БД

  • Некоторые объекты содержат данные, главные это таблицы и индексы.
  • Программные объекты такие как хранимые процедуры и функции это исполняемый код
  • Представления и синонимы это объекты которые предоставляют доступ к другим объектам
  • Талблица это двумерная структура данных, хранящая строки с определёнными столбцами
  • Таблица существует в схеме. Имя схема с именем таблицы организуют уникальный идентификатор

 

Типы данных

  • Самые часто используемые типы данных это VARCHAR2, NUMBER и DATE
  • Существует много других типов данных

 

Создание простой таблицы

  • Таблицы могут создаваться из ничего или используя подзапрос
  • После создания столбцы могут добавляться, изменяться и удаляться
  • Определение столбца может включать значение по умолчанию

 

Создание и использование временных таблиц

  • Строки во временной таблице доступны только для сессии которая их добавила
  • DML надо временными таблицами не генерируют данных для отмены изменений
  • Временные таблицы существуют только в PGA сессии или во временных сегментах
  • Временная таблица может хранить данные всё время жизни сессии или только время действия транзакции, в зависимости от того как она была создана

 

Ограничения

  • Ограничения могут определяться в момент создания таблицы и добавляться позже
  • Ограничения могут определяться в строке определения столбца или после определения столбцов
  • Ограничения табличного-уровня могут быть более гибко настраиваемы чем ограничения создаваемые в строке определения столбца
  • Таблица может иметь только один первичный ключ но много ограничений уникальности
  • Превичные ключ функционально равен ограничению уникальности вместе с ограничением обязательности
  • Ограничение уникальности не предотвращает от возможности вставки нескольки строк со значением NULL
  • Внешний ключ определяет отношения между таблицами

 

Индексы

  • Индексы необходимы для работы ограничений уникальности и первичных ключей
  • Значени NULL не влючается в B* Tree индекс, но включается в bitmap индекс
  • B* Tree индексы подходят для столбцов с высокой мощностьб, битмап индексы – для столбцов с маленькой мощностью
  • B* Tree индекс может быть уникальным или неуникальным, что определяет возможность хранить дубликаты в значении ключа
  • Bitmap индексы могут быть составными, основанными на функции, и сортированными; B* Tree индексы в добавок к этим свойствам так же ещё могут быть уникальными, сжатыми и обратными

 

Представления

  • Простые представления используют одну (базовую или детальную) таблицу и не используют ни функции ни аггрегацию
  • Сложные представления основаны на команде SELECT вне зависимости от сложности запроса
  • Представления это объекты схемы. Для использования представления из другой схемы, имя представления должно предваряться именем схемы
  • К представлениям можно писать запросы как будто это таблицы
  • Предстваления можно объединять с другими представлениями или таблицами, их можно аггрегивароть и в некоторых случаях использовать для DML команд
  • Представления существуют только как конструкции в словаре данных. Когда вы выполняете запрос к представлению запрос-основа всегда выполняется

 

Синонимы

  • Синонимы это псевдоним для представления или таблицы
  • Частные синонимы это объекты схемы; общие синонимы существуют вне пользовательской схемы и могут использоваться без указания схемы в уникальном идентификаторе
  • Синонимы используют тоже пространство имен что и представления и таблицы

 

Сиквенсы

  • Сиквенсы генерируют уникльные значения – до тех пор пока MAXVALUE или MINVALUE и CYCLE не указаны
  • Увеличение значения сиквенса не может подтверждаться или отменяться
  • Любая сессия может увеличить значение сиквенса путём запроса следующего значения. Также возможно получить текущее (последнее использованное) значение для текущей сессии но не последнее сгенерированное значение.

Комментарии

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *