Теория для лабораторной работы №1 - "Изучение команд DDL", страница 10

 

Для выполнения оператора CREATE SCHEMA, Oracle выполняет каждый содержащийся в этой схеме оператор. Если все операторы выполнены успешно, Oracle завершает транзакцию, иначе делает откат.

Пример.

 

CREATE SCHEMA AUTHORIZATION blair

      CREATE TABLE sox

               (color VARCHAR2(10)  PRIMARY KEY, quantity NUMBER)

      CREATE VIEW red_sox

               AS SELECT color, quantity FROM sox WHERE color = 'RED'

 

GRANT select ON red_sox TO waites

 

Этот оператор создаёт таблицу SOX, обзор RED_SOX и назначает привилегию SELECT на обзор RED_SOX пользователю WAITES.

CREATE TABLE

Назначение команды: для создания таблицы – основной структуры для хранения данных пользователя.

Требования к использованию: для создания таблицы в собственной схеме необходимо иметь системную привилегию CREATE TABLE. Для создания таблицы в схеме другого пользователя необходимо иметь системную привилегию CREATE ANY TABLE. Владелец схемы для включения в неё таблицы должен иметь либо квоту на табличное пространство или системную привилегию UNLIMITED TABLESPACE.

 

Синтаксис:

 

Параметры:

schema

имя схемы, содержащей таблицу.

table

имя создаваемой таблицы.

column

имя столбца таблицы. Таблица может иметь до 254 столбцов. Можно опустить определение столбцов только если использовать клаузу AS.

datatype

тип данных столбца.

DEFAULT

определяет значение, присваиваемое столбцу, если в операторе INSERT опущено значение для данного столбца. DEFAULT не может содержать ссылки на другие столбцы, псевдостолбцы CURVAL, NEXTVAL, LEVEL, ROWNUM, а также дату.

column_constraint

определяет ограничения для столбцов таблицы.

table_constraint

определяет ограничения для таблицы.

PCTFREE

определяет в процентах пространство для будущего обновления строк таблицы. Значение должно быть в пределах от 0 до 99.

PCTUSED

определяет в процентах минимальный размер памяти для занятых блоков в таблице.

TABLESPACE

определяет размер памяти в котором создаётся таблица.

RECOVERABLE

если Oracle находится в режиме ARCHIVELOG, то наличие этого параметра помогает легко восстановить создание таблицы.

UNRECOVERABLE

обратное предыдущему параметру.

CLUSTER

определяет, что таблица будет частью кластера. Столбцы, перечисленные в этой клаузе соответствуют столбцам кластера.

ENABLE

разрешение ограничений на таблицу.

DISABLE

запрещение ограничений на таблицу.

AS subquery

вставляет строки, возвращённые подзапросом в таблицу.