Создание схемы в Oracle PL/SQL

В этом учебном пособии вы узнаете, как создать схему в Oracle с описанием и примерами.

Описание

Создание схемы в Oracle, поначалу может показаться немного запутанной. Вы можете подумать, что оператор CREATE SCHEMA создаст вашу схему, но это не так. Оператор CREATE SCHEMA используется только для создания объектов (т.е. таблиц, представлений и т.д.) в вашей схеме в одном SQL - предложении, но фактически не создает саму схему.

Чтобы создать схему в Oracle, вам необходимо выполнить следующие действия:

1. Создать нового пользователя в Oracle.

По сути, схема создается в Oracle при создании пользователя. (Изучите синтаксис оператора CREATE USER).

Мы можем создать нового пользователя с оператором CREATE USER следующим образом:

Этот оператор CREATE USER создаст нового пользователя samvel в базе данных Oracle, чей пароль pass4samvel, табличное пространство по умолчанию будет tbs_01 с квотой в 20 МБ, а временным табличным пространством будет tbs_01.

Если у вас еще нет табличных пространств, узнайте, как создавать стандартные и временные табличные пространства.

2. Назначение привилегий SYSTEM новому пользователю в Oracle

Следующим шагом в настройке вашей схемы является назначение «системных привилегий» новому пользователю samvel.

Эти «системные привилегии» позволят нашему новому пользователю создавать сессию в Oracle, а также создавать таблицы, представления, триггеры, процедуры, последовательности и синонимы в новой схеме. Вот пример того, как мы можем предоставить эти системные привилегии:

Эти новые привилегии теперь предоставляются пользователю, называемому samvel.

3. Создание объектов в схеме

Теперь, когда схема (называемая samvel) была создана с необходимыми привилегиями, вы можете создавать объекты в схеме. Это можно сделать одним из двух способов:

  • Выполнение отдельных операторов SQL для создания каждого объекта. Это будет сделано с помощью операторов CREATE TABLE и CREATE VIEW.
  • Выполнение оператора CREATE SCHEMA для создания нескольких объектов в одном выражении SQL.

4. Привилегии Grant объекта

После того, как вы создали свои объекты в схеме, вам необходимо предоставить привилегии, чтобы другие схемы/пользователи могли обращаться к вашим объектам базы данных (т.е. таблицам).

5. Создание синонимов для объектов

В качестве последнего шага вам может понадобиться создать синонимы, чтобы другие схемы могли обращаться к новым объектам базы данных (т.е. таблицам) без необходимости префикса имен объектов с именем схемы.

Например, если бы вы были другим пользователем с именем samvel и хотели выбрать из таблицы suppliers в схеме new_schema, вам нужно было бы запустить следующий оператор SELECT (до создания любых синонимов):

Если вы затем создали синоним таблицы suppliers следующим образом:

Вы можете выполнить оператор SELECT следующим образом:

Префикс имени таблицы с именем схемы больше не нужен.