Це, мабуть, питання n00blike (або гірше). Але я завжди розглядав схему як визначення таблиці в базі даних. Це неправильно або не зовсім правильно. Я мало пам’ятаю своїх курсів по базі даних.
Це, мабуть, питання n00blike (або гірше). Але я завжди розглядав схему як визначення таблиці в базі даних. Це неправильно або не зовсім правильно. Я мало пам’ятаю своїх курсів по базі даних.
Відповіді:
схема : база даних : таблиця :: план поверху : будинок : кімната
Схема відношення є логічним визначенням таблиці - вона визначає, що називається таблицею, і що таке ім'я та тип кожного стовпця. Це як план чи план. Схема бази даних - це набір схем відношень для цілої бази даних.
Таблиця являє собою структуру з купою рядків ( так званий «кортежів»), кожен з яких має атрибути , визначені в схемі. Таблиці також можуть мати на них індекси, які допоможуть шукати значення в певних стовпцях.
База даних формально - це будь-який збір даних. У цьому контексті база даних буде сукупністю таблиць. АСУБД (система управління базами даних) є програмне забезпечення (наприклад , MySQL, SQL Server, Oracle і т.д.) , яка управляє і керує базою даних.
У двох словах, схема - це визначення для всієї бази даних, тому вона включає таблиці, представлення даних, збережені процедури, індекси, первинний та зовнішній ключі тощо.
Показано, що саме ця публікація стосується лише Oracle та визначення схеми змінюється в контексті іншої БД.
Напевно, це якась річ просто гугл, але терміни FYI, як видається, відрізняються у своїх визначеннях, що є найбільш прикрою справою :)
В Oracle база даних - це база даних. У голові думайте про це як про файли даних та повторні журнали та про фактичну фізичну присутність на диску самої бази даних (тобто не про екземпляр)
Схема є ефективно користувачем. Більш конкретно, це набір таблиць / прок / індексів тощо, що належать користувачеві. Інший користувач має іншу схему (таблиці, якими він / вона володіє), однак користувач також може бачити будь-які схеми, на яких вибрав привілейовані права. Отже база даних може складатися з сотень схем, а кожна схема - сотні таблиць. Ви можете мати таблиці з однаковим іменем в різних схемах, які знаходяться в одній базі даних.
Таблиця - це таблиця, набір рядків і стовпців, що містять дані, і міститься у схемах.
Наприклад, визначення SQL Server може бути різним. Я цього не знаю.
Схема поводиться, схоже, на батьківський об'єкт, як це спостерігається у світі OOP. тому це не сама база даних. можливо, це посилання корисне.
Але, у MySQL два рівносильні. Ключове слово DATABASE або DATABASES можна замінити на SCHEMA або SCHEMAS, де б воно не з’явилося. Приклади:
Терміни SCHEMA & DATABASE залежать від СУБД.
Таблиця являє собою набір елементів даних (значень) , який структурований з використанням моделі вертикальних колонок (які ідентифіковані за їх імені) і горизонтальними рядами. База даних містить одну або кілька (зазвичай) таблиць . І ви зберігаєте свої дані в цих таблицях. Таблиці можуть бути пов’язані між собою ( Дивіться тут ).
Детальніше про схеми:
У SQL 2005 схема є способом групування об'єктів. Це контейнер, в який можна помістити предмети. Люди можуть володіти цим об’єктом. Ви можете надати права на схему.
У 2000 році схема була еквівалентною користувачеві. Тепер він вийшов з ладу і є дуже корисним. Ви можете кинути всі свої користувацькі програми в певну схему, а адміністратори - на іншу. Надайте EXECUTE відповідному користувачеві / ролі, і ви закінчите з наданням EXECUTE за певними процедурами. Приємно.
Нотація крапок піде так:
Server.Database.Schema.Object
або
myserver01.Adventureworks.Accounting.Beans
A Schema
- це сукупність об'єктів бази даних, яка включає і логічні структури. У ньому є ім’я користувача, який йому належить. Схема database
може мати будь-яку кількість схем. Одна таблиця з бази даних може відображатися у двох різних однойменних схемах. Користувач може переглядати будь-яку схему, для якої йому було призначено привілей вибору.
Всупереч деяким вищевказаним відповідям, ось моє розуміння, засноване на досвіді з кожним із них:
database/schema :: table
database :: (schema/namespace ::) table
database/schema/user :: (tablespace ::) table
Виправте мене, будь ласка, простір таблиць необов’язковий чи Oracle чи ні, минуло давно, як я пам’ятаю їх використання.
База даних містить одну або декілька названих схем, які, в свою чергу, містять таблиці. Схеми також містять інші види іменованих об'єктів, включаючи типи даних, функції та оператори. Те саме ім'я об'єкта може використовуватися в різних схемах без конфлікту; наприклад, і schema1, і myschema можуть містити таблиці, названі mytable. На відміну від баз даних, схеми не розділені жорстко: користувач може отримати доступ до об'єктів у будь-якій із схем бази даних, до якої він підключений, якщо він має права на це.
Є кілька причин, через які можна використовувати схеми:
Дозволити багатьом користувачам використовувати одну базу даних, не заважаючи один одному.
Організувати об’єкти бази даних в логічні групи, щоб зробити їх більш керованими.
Сторонні програми можуть бути розміщені в окремі схеми, щоб вони не стикалися з іменами інших об'єктів.
Схеми є аналогами каталогів на рівні операційної системи, за винятком того, що схеми не можуть бути вкладені.
Офіційну документацію можна посилати https://www.postgresql.org/docs/9.1/ddl-schemas.html
Схеми містять Бази даних.
Бази даних є частиною схеми.
Отже, схеми> бази даних.
Схеми містять перегляди, збережені процедури, бази даних, тригер (и) тощо.
Схема не є планом для всієї бази даних. Це план / контейнер для підмножини об'єктів (ex.tables) всередині бази даних aa.
Це означає, що всередині однієї бази даних можна мати кілька об'єктів (наприклад, таблиці), які не підпадають під одну функціональну категорію. Таким чином, ви можете згрупувати їх за різними схемами та надати їм різні права доступу користувачів.
Це означає, що я не впевнений, чи можна мати одну таблицю за кількома схемами. Користувацький інтерфейс управління Studio Studio дає спадне меню, щоб призначити схему таблиці, і, отже, дає можливість вибрати лише одну схему. Я думаю, якщо ви зробите це з TSQL, це може створити 2 (або кілька) різних об'єктів з різними ідентифікаторами об'єктів.
Схема бази даних - це спосіб логічно групувати об'єкти, такі як таблиці, представлення даних, збережені процедури тощо. Подумайте про схему як про контейнер об'єктів. А таблиці - це колекції рядків і стовпців. поєднання всіх таблиць складає db.