Эта абстракция позволяет владеть одними и теми же объектами нескольким пользователям, поскольку можно создать схему, владельцем которой будет роль базы данных

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

Начиная с SQL Server 2005, жесткая связь между пользователями и схемами была отменена. Теперь Database Engine поддерживает именованные схемы, используя понятие принципала (администратора доступа), который имеет право доступа к объектам.

Принципал может быть: индивидуальными (неделимыми) или коллективными (групповым).

Индивидуальный принципал представляет одного пользователя, например, и виде учетной записи (логин) или учетной записи пользователя Windows. Групповой принципал может быть группой пользователей, например, ролью или группой Windows.

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

Отделение пользователей базы данных от схем дает большие преимущества, например, такие:

· один принципал может владеть несколькими схемами;

· несколько индивидуальных принципалов могут владеть одной схемой через их членство в роли или группе Windows;

· удаление пользователя базы данных не требует переименования объектов, содержащихся в схеме этого пользователя.

Каждая база данных в системе имеет следующие схемы по умолчанию:

· guest

· dbo

· INFORMATION_SCHEMA

· sys.

· и др.

Database Engine дает возможность пользователям, не имеющим учетной записи пользователя, получить доступ к базе данных с использованием схемы guest. Можно удалять и добавлять схему guest в любой базе данных, кроме системных.

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

Схема INFORMATION_SCHEMA содержит всю информацию о представлениях схемы.

Схема sys содержит системные объекты.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: