Разница между базой данных и схемой - PullRequest
140 голосов
/ 16 марта 2011

В чем разница между базой данных и схемой в SQL Server? Оба являются контейнерами таблиц и данных.

Если схема удалена, то все ли таблицы, содержащиеся в этой схеме, также удаляются автоматически или они удаляются при удалении базы данных?

Ответы [ 5 ]

156 голосов
/ 16 марта 2011

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

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

РЕДАКТИРОВАТЬ для дополнительного вопроса

drop schema test1

Сообщение 3729, Уровень 16, Состояние 1, Строка 1
Невозможно удалить схему 'test1', так как на нее ссылается объект 'copyme'.

Вы не можете удалить схему, когда она используется. Сначала вы должны удалить все объекты из схемы.

Связанные чтения:

  1. Что хорошего в схемах SQL Server?
  2. MSDN: разделение схемы пользователя
18 голосов
/ 16 марта 2011

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

12 голосов
/ 16 марта 2011

База данных похожа на контейнер данных со схемой, а схемы - это расположение таблиц с типами данных, связями и прочим

7 голосов
/ 16 марта 2011

Схема сообщает, какие таблицы находятся в базе данных, какие у них столбцы и как они связаны.Каждая база данных имеет свою собственную схему.

4 голосов
/ 16 марта 2011

Схема в SQL Server - это объект, который концептуально содержит определения для других объектов базы данных, таких как таблицы, представления, хранимые процедуры и т. Д.

...