Галерея
7757 8119 8300 8698 8817 9504 9722 9937
Интересные записи
Топовые новости
Новое

Инструкция CREATE SCHEMA

Данная инструкция создает схему, то есть именованный набор взаимосвязанных объектов. Схема — это набор таблиц, представлений и допусков, присвоенных пользователям и ролям. Согласно стандарту ANSI сами допуски для конкретных объектов не являются объектами схемы и не принадлежат к конкретным схемам. Однако роли — наборы привилегий — принадлежат к схемам.


Синтаксис SQL 2003

CREATE SCHEMA [имя_схемы] [AUTHORIZATION имя_владельца] [DEFAULT CHARACTER SET

имя_набора_символов] [PATH имя_схемы [, …]]

[ANSI CREATE инструкции […]] [ANSI GRANT инструкции […]]


Ключевые слова

CREATE SCHEMA [имя_схемы]

Создается схема с именем имя_схемы. Если имя опущено, база данных создает имя сама, используя имя пользователя — владельца схемы.

AUTHORIZATION имя_владельца

В параметре имя_владельца указывается имя пользователя — владельца схемы. Если предложение опущено, владельцем схемы будет текущий пользователь. Стандарт ANSI позволяет опустить либо имя_схемы, либо всю конструкцию AUTHORIZATION, либо использовать их вместе.

DEFAULT CHARACTER SET имя_набора_символов

Объявляется набор символов по умолчанию (имя_набора_символов) для всех объектов схемы.

PATH имя_схемы [, …]

При желании можно указать имя файла и путь к нему для любой неуточненной (unqualified) подпрограммы (то есть записанной процедуры, пользовательской функции и пользовательского метода) в схеме.

ANSI CREATE инструкции […]

Содержит одну или несколько инструкций CREATE. Запятые между инструкциями не ставятся.

ANSI GRANT[…]

Содержит одну или несколько инструкций GRANT для объектов, которые были определены ранее. Обычно объекты создаются выше, в этой же инструкции CREATE SCHEMA, но это может быть и любой объект, созданный заранее. Запятые между инструкциями GRANT не ставятся.


Общие правила

Инструкция CREATE SCHEMA — это контейнер, который может содержать много других инструкций CREATE и GRANT. Наиболее распространенный взгляд на схему таков: схема — это все объекты, принадлежащие определенному пользователю. Например, пользователю jake в его схеме может принадлежать несколько таблиц и представлений, в том числе таблица publishers. Между тем пользователь dylan может владеть несколькими другими таблицами и представлениями, входящими в его схему, и он также может владеть собственной отдельной копией таблицы publishers.

Стандарт ANSI требует, чтобы в инструкции CREATE SCHEMA были допустимы все виды инструкций CREATE. На практике в большинстве реализаций инструкции CREATE SCHEMA допустимо использование только трех видов вложенных инструкций: CREATE TABLE, CREATE VIEW и GRANT. Порядок расположения команд не имеет значения, и это означает, что вы можете назначать привилегии таблицам и представлениям, для которых инструкции CREATE стоят в инструкции CREATE SCHEMA ниже инструкций GRANT.

Источник