SQL CREATE / ALTER / DROP SCHEMA
Схема базы данных
Схема - это логический держатель объекта базы данных. Схема базы данных системы базы данных - это ее структура, описанная на формальном языке, поддерживаемом системой управления базами данных. Формальное определение схемы базы данных - это набор формул (предложений), называемых ограничениями целостности, налагаемыми на базу данных. Эти ограничения целостности обеспечивают совместимость между частями схемы. Все ограничения выражаются на одном языке.
Создание схем может быть полезно, когда объекты имеют циклические ссылки, то есть когда нам нужно создать две таблицы, каждая с внешним ключом, ссылающимся на другую таблицу. Различные реализации обрабатывают схемы немного по-разному.
Синтаксис:
СОЗДАТЬ СХЕМУ [имя_схемы] [АВТОРИЗАЦИЯ имя_хозяина] [DEFAULT CHARACTER SET char_set_name] [PATH schema_name [, ...]] [ANSI CREATE заявления [...]] [ANSI GRANT заявления [...]];
Параметр:
название | Описание |
---|---|
schema_name | Имя схемы, которая будет создана. Если это не указано, имя_пользователя используется в качестве имени схемы. |
АВТОРИЗАЦИЯ имя_хозяина | Определяет пользователя, который является владельцем схемы. Если не указано, текущий пользователь является владельцем. |
DEFAULT CHARACTER SET char_set_name | Укажите набор символов по умолчанию, используемый для всех объектов, созданных в схеме. |
PATH имя_схемы [, ...] | Необязательный путь к файлу и имя файла. |
ANSI CREATE заявления [...] | Содержит одно или несколько операторов CREATE. |
Заявления ANSI GRANT [...] | Содержит одно или несколько операторов GRANT. |
Примеры :
Пример-1 : Как пользователь с полномочиями, создайте схему с именем STUDENT, в которой пользователь STUDENT будет владельцем.
Код SQL:
CREATE SCHEMA STUDENT AUTHORIZATION STUDENT
Пример 2 : создание схемы с таблицей сведений об ученике. Дайте полномочия на таблицу пользователю DAVID.
Код SQL:
CREATE SCHEMA INVENTRY
CREATE TABLE PART (IDNO SMALLINT NOT NULL,
SNAME VARCHAR(40),
CLASS INTEGER)
GRANT ALL ON PART TO DAVID
Создать схему в MySQL [5.7]
В MySQL CREATE SCHEMA является синонимом CREATE DATABASE.
Синтаксис:
СОЗДАТЬ {БАЗА ДАННЫХ | СХЕМА} [ЕСЛИ НЕ СУЩЕСТВУЕТ] db_name [create_specification] ... create_specification: [ПО УМОЛЧАНИЮ] CHARACTER SET [=] charset_name | [ПО УМОЛЧАНИЮ] COLLATE [=] collation_name
Создать схему в PostgreSQL 9.3.13
CREATE SCHEMA вводит новую схему в текущую базу данных. Имя схемы должно отличаться от имени любой существующей схемы в текущей базе данных.
Синтаксис:
СОЗДАТЬ СХЕМУ имя_схемы [АВТОРИЗАЦИЯ имя_пользователя] [элемент_схемы [...]] СОЗДАТЬ АВТОРИЗАЦИЮ СХЕМЫ user_name [schema_element [...]] СОЗДАТЬ СХЕМУ, ЕСЛИ НЕ СУЩЕСТВУЕТ имя_схемы [АВТОРИЗАЦИЯ имя_пользователя] СОЗДАЙТЕ СХЕМУ, ЕСЛИ НЕ СУЩЕСТВУЕТ АВТОРИЗАЦИЯ user_name
Создать схему в Oracle 11g
Используйте оператор CREATE SCHEMA для создания нескольких таблиц и представлений и выполнения нескольких грантов в собственной схеме в одной транзакции.
Чтобы выполнить оператор CREATE SCHEMA, Oracle Database выполняет каждый включенный оператор. Если все операторы выполняются успешно, база данных фиксирует транзакцию. Если какой-либо оператор приводит к ошибке, база данных откатывает все операторы.
Оператор CREATE SCHEMA может включать в себя операторы CREATE TABLE, CREATE VIEW и GRANT. Для выдачи оператора CREATE SCHEMA у вас должны быть права, необходимые для выдачи включенных операторов.
Синтаксис:
Схема создания схемы авторизации {create_table_statement | create_view_statement | grant_statement } ...;
Создать схему в SQL Server 2014
Создает схему в текущей базе данных. Транзакция CREATE SCHEMA также может создавать таблицы и представления в новой схеме и устанавливать разрешения GRANT, DENY или REVOKE для этих объектов.
Синтаксис:
Следующий оператор создает базу данных и полностью определяет каждый аргумент:
СОЗДАТЬ СХЕМУ schema_name_clause [<schema_element> [... n]] <schema_name_clause> :: = { schema_name | АВТОРИЗАЦИЯ имя_хозяина | имя_схемы АВТОРИЗАЦИЯ имя_хозяина } <schema_element> :: = { определение таблицы | view_definition | grant_statement | revoke_statement | deny_statement }
Изменить схему
Инструкция ALTER SCHEMA используется для переименования схемы или для указания нового владельца, новый владелец должен быть уже существующим пользователем в базе данных
Синтаксис:
ALTER SCHEMA имя_схемы [RENAME TO new_schema_name] [OWNER TO new_user_name]
Параметр:
название | Описание |
---|---|
schema_name | Имя существующей схемы. |
new_schema_name | Новое имя схемы. |
новый владелец | Новый владелец схемы. |
Изменить схему в MySQL [5.7]
В MySQL CREATE SCHEMA является синонимом CREATE DATABASE.
Синтаксис:
ALTER {БАЗА ДАННЫХ | СХЕМА} [db_name] alter_specification ... ALTER {БАЗА ДАННЫХ | СХЕМА} db_name ОБНОВЛЕНИЕ ДАННЫХ ИМЕНИ КАТАЛОГА alter_specification: [ПО УМОЛЧАНИЮ] CHARACTER SET [=] charset_name | [ПО УМОЛЧАНИЮ] COLLATE [=] collation_name
В MySQL ALTER SCHEMA является синонимом ALTER DATABASE. ALTER DATABASE позволяет вам изменять общие характеристики базы данных. Эти характеристики хранятся в файле db.opt в каталоге базы данных. Чтобы использовать ALTER DATABASE, вам нужна привилегия ALTER для базы данных.
Изменить схему в PostgreSQL 9.3.13
Описание ALTER SCHEMA изменяет определение схемы. Пользователь должен владеть схемой, чтобы использовать ALTER SCHEMA. Чтобы переименовать схему, вы также должны иметь привилегию CREATE для базы данных. Чтобы изменить владельца, вы также должны быть прямым или косвенным участником новой роли владельца, а также иметь привилегию CREATE для базы данных.
Синтаксис:
ALTER SCHEMA name RENAME TO new_name ALTER SCHEMA name ВЛАДЕЛЕЦ new_owner
Изменить схему в SQL Server 2014
ALTER SCHEMA можно использовать только для перемещения защищаемых между схемами в одной базе данных. Пользователи и схемы полностью разделены.
Синтаксис:
ALTER SCHEMA имя_схемы TRANSFER [<entity_type> ::] securable_name [;] <entity_type> :: = { Объект | Тип | Коллекция XML-схем }
Схема удаления
Уничтожить схему.
Синтаксис:
DROP SCHEMA <имя схемы>
Удалить схему в MySQL [5.7]
DROP DATABASE удаляет все таблицы в базе данных и удаляет базу данных. DROP SCHEMA является синонимом DROP DATABASE.
Синтаксис:
DROP {DATABASE | СХЕМА} [ЕСЛИ СУЩЕСТВУЕТ] db_name
Удалить схему в PostgreSQL 9.3.13
DROP SCHEMA удаляет схемы из базы данных. Схема может быть удалена только ее владельцем или суперпользователем.
Синтаксис:
DROP SCHEMA [ЕСЛИ СУЩЕСТВУЕТ] имя [, ...] [CASCADE | ОГРАНИЧЕНИЕ]
Удалить схему в SQL Server 2014
Условно отбрасывает схему, только если она уже существует.
Синтаксис:
DROP SCHEMA [ЕСЛИ СУЩЕСТВУЕТ] имя_схемы
Упражнения по SQL
- Упражнения по SQL, практика, решение
- SQL Получить данные из таблиц [33 Упражнения]
- Булевы и реляционные операторы SQL [12 упражнений]
- Подстановочные знаки SQL и специальные операторы [22 упражнения]
- Агрегатные функции SQL [25 упражнений]
- Вывод запроса форматирования SQL [10 упражнений]
- SQL-запросы к нескольким таблицам [7 упражнений]
- ФИЛЬТРАЦИЯ И СОРТИРОВКА в базе данных персонала [38 упражнений]
- SQL СОЕДИНЯЕТ
- SQL ПОДПИСИ
- SQL Union [9 упражнений]
- SQL View [16 упражнений]
- Управление учетными записями пользователей SQL [16 упражнение]
- База данных фильмов
- ОСНОВНЫЕ запросы к базе данных фильмов [10 упражнений]
- ПОДПИСКИ на фильм База данных [16 упражнений]
- ПРИСОЕДИНЯЕТСЯ к базе данных фильма [24 упражнения]
- Футбольная база
- Вступление
- ОСНОВНЫЕ запросы по футболу базы данных [29 упражнений]
- ПОДПИСКИ по футбольной базе данных [33 упражнения]
- База данных больницы
- База данных сотрудников
- ОСНОВНЫЕ запросы к базе данных сотрудников [115 упражнений]
- БРОНИРОВАНИЕ на сотрудника База данных [77 Упражнения]
- Еще не все!
Хотите улучшить вышеуказанную статью? Вносите свои заметки / комментарии / примеры через Disqus.
Предыдущая: Компоненты таблицы
Далее: Создать / изменить базу данных
Новый контент: Composer: менеджер зависимостей для PHP , R программирования