Галерея
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.

Источник