Строго кажучи, різниця між Базою даних і Схемою існує в MySql.
Однак це не так у інших двигунах баз даних, таких як SQL Server. На сервері SQL:
Кожна таблиця належить до групи об’єктів у базі даних, що називається схемою бази даних . Це контейнер або простір імен ( Запит на Microsoft SQL Server 2012 )
За замовчуванням всі таблиці в SQL Server належать до схеми за замовчуванням під назвою dbo . Коли ви запитуєте таблицю, яка не була виділена жодній конкретній схемі, ви можете зробити щось на кшталт:
SELECT *
FROM your_table
що еквівалентно:
SELECT *
FROM dbo.your_table
Тепер SQL-сервер дозволяє створювати різні схеми, що дає можливість групувати таблиці, що мають аналогічне призначення. Це допомагає впорядкувати базу даних.
Наприклад, ви можете створити схему під назвою продаж із таблицями, такими як рахунки-фактури , кредитні рахунки (та будь-які інші, пов’язані з продажами), та іншу схему, що називається пошук , із таблицями, такими як країни , валюти , типи підписки (та будь-яку іншу таблицю, яка використовується як вигляд вгору таблиці).
Таблиці, виділені певному домену, відображаються в диспетчері SQL Server Studio з назвою схеми, попередньо вказаною до імені таблиці (точно так само, як таблиці, що належать до стандартної схеми dbo ).
У SQL Server є спеціальні схеми. Цитувати ту саму книгу:
Існує кілька вбудованих схем баз даних, і їх неможливо відкинути або змінити:
1) dbo , схема за замовчуванням.
2) гість містить об'єкти, доступні гостьовому користувачеві ("гостьовий користувач" - особлива роль у мові SQL Server, з деякими дозволами та дуже обмеженими дозволами). Рідко використовується.
3) ІНФОРМАЦІЯ_ШЕМА , використовувана в переглядах інформаційної схеми
4) sys , зарезервовані виключно для внутрішнього використання SQL Server
Схеми призначені не лише для групування. Насправді можна надати різні дозволи для кожної схеми різним користувачам, як описано в MSDN .
Таким чином, згаданий вище пошук схеми може бути доступний будь-якому стандартному користувачеві в базі даних (наприклад, SELECT
лише дозволи), тоді як таблиця під назвою постачальник рахунків рахунків може бути розподілена в іншій схемі, що називається фінансовою , і надавати доступ лише користувачам у група accounts
(лише приклад, ви отримуєте ідею).
Нарешті, і знову цитуючи ту саму книгу:
Це не та сама схема бази даних та схема таблиці . Перший є простором імен таблиці, тоді як останній стосується визначення таблиці