- Схема базы данных Схема — это логический держатель объекта базы данных. Схема базы данных системы баз данных — это ее структура, описанная на формальном языке, поддерживаемом системой управления базами данных. Формальное определение схемы базы данных — это набор формул (предложений), называемых ограничениями целостности, налагаемыми на базу данных. Эти ограничения целостности обеспечивают совместимость между частями схемы. Все ограничения выражаются на одном языке. Создание схем может быть полезно, когда объекты имеют циклические ссылки, то есть когда нам нужно создать две таблицы, каждая из которых имеет внешний ключ, ссылающийся на другую таблицу. Различные реализации обрабатывают схемы по-разному. Синтаксис: CREATE SCHEMA [schema_name] [AUTHORIZATION owner_name] [DEFAULT CHARACTER] SET char_set_name] [PATH имя_схемы [, ...]] [операторы ANSI CREATE [...]] [операторы ANSI GRANT [...]]; Параметр: Описание schema_name Имя создаваемой схемы. Если это не указано, имя_пользователя используется в качестве имени схемы. АВТОРИЗАЦИЯ имя_владельца Определяет пользователя, который является владельцем схемы. Если не упомянуто, текущий пользователь устанавливается как владелец. НАБОР СИМВОЛОВ ПО УМОЛЧАНИЮ имя_набора_символов Укажите набор символов по умолчанию, используемый для всех объектов, созданных в схеме. PATH имя_схемы [, …] Необязательный путь к файлу и имя файла. Операторы ANSI CREATE […] Содержит один или несколько операторов CREATE. Операторы ANSI GRANT […] Содержит один или несколько операторов GRANT. Примеры: Пример-1: как пользователь с полномочиями создайте схему под названием STUDENT с пользователь СТУДЕНТ как владелец. Код SQL: СОЗДАТЬ СХЕМУ СТУДЕНТ АВТОРИЗАЦИЯ СТУДЕНТ Пример-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. Синтаксис: CREATE {DATABASE | СХЕМА} [ЕСЛИ НЕ СУЩЕСТВУЕТ] db_name [create_specification] ... create_specification: [DEFAULT] CHARACTER SET [=] charset_name | [ПО УМОЛЧАНИЮ] COLLATE [=] collation_name Создать схему в PostgreSQL 9.3.13 CREATE SCHEMA вводит новую схему в текущую базу данных. Имя схемы должно отличаться от имени любой существующей схемы в текущей базе данных.. CREATE SCHEMA schema_name [AUTHORIZATION user_name] [schema_element [...]] CREATE SCHEMA AUTHORIZATION user_name [schema_element [...]] СОЗДАТЬ СХЕМУ, ЕСЛИ НЕ СУЩЕСТВУЕТ имя_схемы [АВТОРИЗАЦИЯ имя_пользователя] СОЗДАТЬ СХЕМУ, ЕСЛИ НЕ СУЩЕСТВУЕТ АВТОРИЗАЦИЯ имя_пользователя Создать схему в Oracle 11g Используйте СОЗДАТЬ СХЕМУ для создания нескольких таблиц и представлений и выполнения нескольких грантов в вашей собственной схеме за одну транзакцию. Чтобы выполнить оператор CREATE SCHEMA, Oracle Database выполняет каждый включенный оператор. Если все операторы выполняются успешно, база данных фиксирует транзакцию. Если какой-либо оператор приводит к ошибке, база данных откатывает все операторы. Оператор CREATE SCHEMA может включать операторы CREATE TABLE, CREATE VIEW и GRANT. Чтобы выполнить оператор CREATE SCHEMA, у вас должны быть права, необходимые для выполнения включенных операторов. Синтаксис: CREATE SCHEMA Схема АВТОРИЗАЦИИ {create_table_statement | create_view_statement | grant_statement} ...; Создать схему в SQL Server 2014 Создает схему в текущей базе данных. Транзакция CREATE SCHEMA также может создавать таблицы и представления в новой схеме и устанавливать разрешения GRANT, DENY или REVOKE для этих объектов. Синтаксис: Следующий оператор создает базу данных и полностью определяет каждый аргумент: CREATE SCHEMA schema_name_clause [ [... n]] :: = {schema_name | АВТОРИЗАЦИЯ имя_владельца | имя_схемы АВТОРИЗАЦИЯ имя_владельца} :: = {определение_таблицы | view_definition | grant_statement | revoke_statement | deny_statement} Alter Schema Оператор ALTER SCHEMA используется для переименования схемы или для указания нового владельца, новым владельцем должен быть уже существующий пользователь база данных Синтаксис: ALTER SCHEMA schema_name [RENAME TO new_schema_name] [OWNER TO new_user_name] Параметр: Имя Описание schema_name Имя существующей схемы. new_schema_name Новое имя схемы. new_owner Новый владелец схемы. Изменить схему в MySQL [5.7] В MySQL CREATE SCHEMA является синонимом СОЗДАТЬ БАЗУ ДАННЫХ. Синтаксис: ALTER {DATABASE | SCHEMA} [db_name] alter_specification ... ALTER {DATABASE | SCHEMA} db_name UPGRADE DIRECTORY NAME Спецификация изменения: [ПО УМОЛЧАНИЮ] НАБОР СИМВОЛОВ [=] charset_name | [DEFAULT] 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 OWNER TO new_owner Изменить схему в SQL Server 2014 ALTER SCHEMA можно только используется для перемещения защищаемого объекта между схемами в одной базе данных. Пользователи и схемы полностью разделены. Синтаксис: ALTER SCHEMA schema_name TRANSFER [ ::] securable_name [; ] :: = {Объект | Тип | Коллекция схем XML} Удалить схему Уничтожить схему. Синтаксис: DROP SCHEMA Drop Schema в MySQL [5.7] DROP DATABASE отбрасывает все таблицы в базе данных и удаляет базу данных . DROP SCHEMA является синонимом DROP DATABASE. Синтаксис: DROP {DATABASE | SCHEMA} [IF EXISTS] db_name Удалить схему в PostgreSQL 9.3.13 DROP SCHEMA удаляет схемы из базы данных. Схема может быть удалена только ее владельцем или суперпользователем. Синтаксис: DROP SCHEMA [IF EXISTS] name [ , ...] [КАСКАД | RESTRICT] Отбросить схему в SQL Server 2014 Условно отбрасывает схему, только если она уже существует. Синтаксис: DROP SCHEMA [IF EXISTS] имя_схемы Практические упражнения по SQL Упражнения по SQL, практика, решение SQL Получение данных из таблиц [33 упражнения] Логические и реляционные операторы SQL [12 упражнений] Подстановочные и специальные операторы SQL [22 упражнения] SQL Агрегатные функции [25 упражнений] Вывод запроса форматирования SQL [10 упражнений] SQL-запросы к нескольким таблицам [7 упражнений] ФИЛЬТРАЦИЯ и СОРТИРОВКА в базе данных HR [38 упражнений] SQL JOINS SQL JOINS [29 упражнений] SQL ПРИСОЕДИНЯЕТСЯ к базе данных HR [27 упражнений] SQL-ПОДПРОСЫ SQL-ПОДПРОСЫ [39 упражнений] ПОДПРОСЫ SQL в базе данных HR [55 упражнений] SQL Union [9 упражнений] Просмотр SQL [16 упражнений] Управление учетными записями пользователей SQL [16 упражнений] База данных фильмов БАЗОВЫЕ запросы к базе данных фильмов [10 упражнений] ПОДПРОСЫ в базе данных фильмов [16 упражнений] ПРИСОЕДИНЯЕТСЯ к базе данных фильмов [24 Упражнения] База данных футбола Введение БАЗОВЫЕ запросы к базе данных футбола [29 упражнений] ЗАПРОСЫ в базе данных футбола [33 упражнения] ПРИСОЕДИНЯЕТСЯ к запросам в базе данных футбола [61 упражнение] База данных больницы Введение БАЗОВЫЙ, ПОДПРОСЫ и СОЕДИНЕНИЯ [39 упражнений] База данных сотрудников БАЗОВЫЕ запросы к базе данных сотрудников [115 упражнений] ПОДзапросы в базе данных сотрудников [77 упражнений] Еще впереди! Хотите улучшить статью выше? Публикуйте свои заметки/комментарии/примеры через Disqus.
- Создать схему в MySQL [5.7]
- Создать схему в PostgreSQL 9.3.13
- Создать схему в Oracle 11g
- Создать схему в SQL Server 2014
- Alter Schema
- Изменить схему в MySQL [5.7]
- Изменить схему в PostgreSQL 9.3.13
- Изменить схему в SQL Server 2014
- Удалить схему
- Drop Schema в MySQL [5.7]
- Удалить схему в PostgreSQL 9.3.13
- Отбросить схему в SQL Server 2014
Схема базы данных
Схема — это логический держатель объекта базы данных. Схема базы данных системы баз данных — это ее структура, описанная на формальном языке, поддерживаемом системой управления базами данных. Формальное определение схемы базы данных — это набор формул (предложений), называемых ограничениями целостности, налагаемыми на базу данных. Эти ограничения целостности обеспечивают совместимость между частями схемы. Все ограничения выражаются на одном языке.
Создание схем может быть полезно, когда объекты имеют циклические ссылки, то есть когда нам нужно создать две таблицы, каждая из которых имеет внешний ключ, ссылающийся на другую таблицу. Различные реализации обрабатывают схемы по-разному.
Синтаксис:
CREATE SCHEMA [schema_name] [AUTHORIZATION owner_name] [DEFAULT CHARACTER] SET char_set_name] [PATH имя_схемы [, ...]] [операторы ANSI CREATE [...]] [операторы ANSI GRANT [...]];
Параметр:
Описание | |
---|---|
schema_name | Имя создаваемой схемы. Если это не указано, имя_пользователя используется в качестве имени схемы. |
АВТОРИЗАЦИЯ имя_владельца | Определяет пользователя, который является владельцем схемы. Если не упомянуто, текущий пользователь устанавливается как владелец. |
НАБОР СИМВОЛОВ ПО УМОЛЧАНИЮ имя_набора_символов | Укажите набор символов по умолчанию, используемый для всех объектов, созданных в схеме. |
PATH имя_схемы [, …] | Необязательный путь к файлу и имя файла. |
Операторы ANSI CREATE […] | Содержит один или несколько операторов CREATE. |
Операторы ANSI GRANT […] | Содержит один или несколько операторов GRANT. |
Примеры:
Пример-1 : как пользователь с полномочиями создайте схему под названием STUDENT с пользователь СТУДЕНТ как владелец.
Код SQL:
СОЗДАТЬ СХЕМУ СТУДЕНТ АВТОРИЗАЦИЯ СТУДЕНТ
Пример-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.
Синтаксис:
CREATE {DATABASE | СХЕМА} [ЕСЛИ НЕ СУЩЕСТВУЕТ] db_name [create_specification] ... create_specification: [DEFAULT] CHARACTER SET [=] charset_name | [ПО УМОЛЧАНИЮ] COLLATE [=] collation_name
Создать схему в PostgreSQL 9.3.13
CREATE SCHEMA вводит новую схему в текущую базу данных. Имя схемы должно отличаться от имени любой существующей схемы в текущей базе данных..
CREATE SCHEMA schema_name [AUTHORIZATION user_name] [schema_element [...]] CREATE SCHEMA AUTHORIZATION user_name [schema_element [...]] СОЗДАТЬ СХЕМУ, ЕСЛИ НЕ СУЩЕСТВУЕТ имя_схемы [АВТОРИЗАЦИЯ имя_пользователя] СОЗДАТЬ СХЕМУ, ЕСЛИ НЕ СУЩЕСТВУЕТ АВТОРИЗАЦИЯ имя_пользователя
Создать схему в Oracle 11g
Используйте СОЗДАТЬ СХЕМУ для создания нескольких таблиц и представлений и выполнения нескольких грантов в вашей собственной схеме за одну транзакцию.
Чтобы выполнить оператор CREATE SCHEMA, Oracle Database выполняет каждый включенный оператор. Если все операторы выполняются успешно, база данных фиксирует транзакцию. Если какой-либо оператор приводит к ошибке, база данных откатывает все операторы.
Оператор CREATE SCHEMA может включать операторы CREATE TABLE, CREATE VIEW и GRANT. Чтобы выполнить оператор CREATE SCHEMA, у вас должны быть права, необходимые для выполнения включенных операторов.
Синтаксис:
CREATE SCHEMA Схема АВТОРИЗАЦИИ {create_table_statement | create_view_statement | grant_statement} ...;
Создать схему в SQL Server 2014
Создает схему в текущей базе данных. Транзакция CREATE SCHEMA также может создавать таблицы и представления в новой схеме и устанавливать разрешения GRANT, DENY или REVOKE для этих объектов.
Синтаксис:
Следующий оператор создает базу данных и полностью определяет каждый аргумент:
CREATE SCHEMA schema_name_clause [ [... n]] :: = {schema_name | АВТОРИЗАЦИЯ имя_владельца | имя_схемы АВТОРИЗАЦИЯ имя_владельца} :: = {определение_таблицы | view_definition | grant_statement | revoke_statement | deny_statement}
Alter Schema
Оператор ALTER SCHEMA используется для переименования схемы или для указания нового владельца, новым владельцем должен быть уже существующий пользователь база данных
Синтаксис:
ALTER SCHEMA schema_name [RENAME TO new_schema_name] [OWNER TO new_user_name]
Параметр:
Имя | Описание |
---|---|
schema_name | Имя существующей схемы. |
new_schema_name | Новое имя схемы. |
new_owner | Новый владелец схемы. |
Изменить схему в MySQL [5.7]
В MySQL CREATE SCHEMA является синонимом СОЗДАТЬ БАЗУ ДАННЫХ.
Синтаксис:
ALTER {DATABASE | SCHEMA} [db_name] alter_specification ... ALTER {DATABASE | SCHEMA} db_name UPGRADE DIRECTORY NAME Спецификация изменения: [ПО УМОЛЧАНИЮ] НАБОР СИМВОЛОВ [=] charset_name | [DEFAULT] 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 OWNER TO new_owner
Изменить схему в SQL Server 2014
ALTER SCHEMA можно только используется для перемещения защищаемого объекта между схемами в одной базе данных. Пользователи и схемы полностью разделены.
Синтаксис:
ALTER SCHEMA schema_name TRANSFER [ ::] securable_name [; ] :: = {Объект | Тип | Коллекция схем XML}
Удалить схему
Уничтожить схему.
Синтаксис:
DROP SCHEMA
Drop Schema в MySQL [5.7]
DROP DATABASE отбрасывает все таблицы в базе данных и удаляет базу данных . DROP SCHEMA является синонимом DROP DATABASE.
Синтаксис:
DROP {DATABASE | SCHEMA} [IF EXISTS] db_name
Удалить схему в PostgreSQL 9.3.13
DROP SCHEMA удаляет схемы из базы данных. Схема может быть удалена только ее владельцем или суперпользователем.
Синтаксис:
DROP SCHEMA [IF EXISTS] name [ , ...] [КАСКАД | RESTRICT]
Отбросить схему в SQL Server 2014
Условно отбрасывает схему, только если она уже существует.
Синтаксис:
DROP SCHEMA [IF EXISTS] имя_схемы
Практические упражнения по SQL
- Упражнения по SQL, практика, решение
- SQL Получение данных из таблиц [33 упражнения]
- Логические и реляционные операторы SQL [12 упражнений]
- Подстановочные и специальные операторы SQL [22 упражнения]
- SQL Агрегатные функции [25 упражнений]
- Вывод запроса форматирования SQL [10 упражнений]
- SQL-запросы к нескольким таблицам [7 упражнений]
- ФИЛЬТРАЦИЯ и СОРТИРОВКА в базе данных HR [38 упражнений]
- SQL JOINS
- SQL JOINS [29 упражнений]
- SQL ПРИСОЕДИНЯЕТСЯ к базе данных HR [27 упражнений]
- SQL-ПОДПРОСЫ
- SQL-ПОДПРОСЫ [39 упражнений]
- ПОДПРОСЫ SQL в базе данных HR [55 упражнений]
- SQL Union [9 упражнений]
- Просмотр SQL [16 упражнений]
- Управление учетными записями пользователей SQL [16 упражнений]
- База данных фильмов
- БАЗОВЫЕ запросы к базе данных фильмов [10 упражнений]
- ПОДПРОСЫ в базе данных фильмов [16 упражнений]
- ПРИСОЕДИНЯЕТСЯ к базе данных фильмов [24 Упражнения]
- База данных футбола
- Введение
- БАЗОВЫЕ запросы к базе данных футбола [29 упражнений]
- ЗАПРОСЫ в базе данных футбола [33 упражнения]
- ПРИСОЕДИНЯЕТСЯ к запросам в базе данных футбола [61 упражнение]
- База данных больницы
- Введение
- БАЗОВЫЙ, ПОДПРОСЫ и СОЕДИНЕНИЯ [39 упражнений]
- База данных сотрудников
- БАЗОВЫЕ запросы к базе данных сотрудников [115 упражнений]
- ПОДзапросы в базе данных сотрудников [77 упражнений]
- Еще впереди!
Хотите улучшить статью выше? Публикуйте свои заметки/комментарии/примеры через Disqus.