В чем разница между схемой и таблицей и базой данных?

Это, вероятно, вопрос n00blike (или худший). Но я всегда рассматривал схему как определение таблицы в базе данных. Это неправильно или не совсем правильно. Я не очень хорошо помню из своих курсов баз данных.

102
18 нояб. '08 в 16:41
источник поделиться
14 ответов

схема : база данных : таблица :: план : дом : номер

177
18 нояб. '08 в 16:45
источник

Схема отношений - это логическое определение таблицы - она ​​определяет, что такое имя таблицы, и каково имя и тип каждого столбца. Это похоже на план или план. Схема базы данных - это сборка схем отношений для всей базы данных.

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

База данных, формально, представляет собой любой набор данных. В этом контексте база данных будет представлять собой набор таблиц. СУБД (система управления базами данных) - это программное обеспечение (например, MySQL, SQL Server, Oracle и т.д.), Которое управляет и запускает базу данных.

81
18 нояб. '08 в 16:49
источник

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

13
18 нояб. '08 в 16:48
источник

Эта конкретная публикация, как было показано, относится только к Oracle, и определение Schema изменяется, когда в контексте другой БД.

Вероятно, что-то вроде просто google, но условия FYI, похоже, различаются в их определениях, что является самой неприятной вещью:)

В Oracle база данных - это база данных. В вашей голове это воспринимается как файлы данных и журналы повтора и фактическое физическое присутствие на диске самой базы данных (т.е. Не экземпляр)

Схема очень эффективна. Более конкретно, это набор таблиц /procs/indexes и т.д., Принадлежащих пользователю. У другого пользователя есть другая схема (таблицы, которыми он владеет), однако пользователь также может видеть любые схемы, на которые они выбирают права. Таким образом, база данных может состоять из сотен схем и каждой схемы сотен таблиц. Вы можете иметь таблицы с тем же именем в разных схемах, которые находятся в одной базе данных.

Таблица представляет собой таблицу, набор строк и столбцов, содержащих данные и содержащихся в схемах.

Определения могут быть разными в SQL Server, например. Я не знаю об этом.

10
18 нояб. '08 в 16:52
источник

Принципы поведения схемы выглядят как родительский объект, как показано в мире ООП. так что это не сама база данных. возможно эта ссылка.

Но в MySQL они эквивалентны. Ключевое слово DATABASE или DATABASES может быть заменен SCHEMA или SCHEMAS, где бы он ни появлялся. Примеры:

  • CREATE DATABASE <= > CREATE SCHEMA
  • SHOW DATABASES <= > SHOW SCHEMAS

Документация MySQL

SCHEMA и DATABASE термины зависят от СУБД.

A Таблица - это набор элементов данных (значений), который организован с использованием модели вертикальных столбцов (которые обозначаются их именем) и горизонтальных строк. База данных содержит одну или несколько (обычно) Таблиц. И вы храните свои данные в этих таблицах. Таблицы могут быть связаны друг с другом (См. Здесь).

7
15 февр. '12 в 12:40
источник

концепция схемы отличается в разных программах db.

здесь я просто ссылаюсь на схему оракула:


Объекты схемы

Схема - это совокупность логических структур данных или объектов схемы. Схема принадлежит пользователю базы данных и имеет то же имя, что и этот пользователь. Каждому пользователю принадлежит одна схема. Объекты схемы могут быть созданы и обработаны с помощью SQL и включают в себя следующие типы объектов:

Кластеры Ограничения Ссылки на базы данных Триггеры базы данных Габаритные размеры Библиотеки внешних процедур Индексированные таблицы Индексы Indextypes Java-классы, ресурсы Java, источники Java Материализованные виды Материализованные журналы просмотра Таблицы объектов Типы объектов Просмотр объектов операторы пакеты Последовательности Хранимые функции, хранимые процедуры Синонимы таблицы Просмотры


Объекты Nonchema

Другие типы объектов также хранятся в базе данных и могут быть созданы и обработаны с помощью SQL, но не содержатся в схеме:

контексты Справочники Файлы параметров (PFILE) и файлы параметров сервера (SPFILE) профили Роли Откат сегментов Табличные Пользователи

2
28 февр. '14 в 6:06
источник

Подробнее о схемах:

В SQL 2005 схема - это способ группировки объектов. Это контейнер, в который вы можете поместить объекты. Люди могут владеть этим объектом. Вы можете предоставить права на схему.

В 2000 году схема была эквивалентна пользователю. Теперь он сломался бесплатно и весьма полезен. Вы можете бросить все свои пользовательские процессы в определенной схеме, а ваш администратор - в другой. Предоставьте EXECUTE соответствующему пользователю/роли, и вы закончите с предоставлением EXECUTE для определенных процедур. Ницца.

Точечная нотация будет выглядеть так:

Server.Database.Schema.Object

или

myserver01.Adventureworks.Accounting.Beans

2
18 нояб. '08 в 23:46
источник

A Schema - это набор объектов базы данных, который также включает в себя логические структуры. Он имеет имя пользователя, которому он принадлежит. A database может иметь любое количество схем. Одна таблица из базы данных может отображаться в двух разных схемах с тем же именем. Пользователь может просмотреть любую схему, для которой им была назначена привилегия выбора.

2
03 июля '12 в 10:09
источник

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

1
14 марта '15 в 0:19
источник

В oracle Schema есть один пользователь в одной базе данных, например scott - одна схема в базе данных orcl.     В одной базе данных у нас может быть много схем, таких как scott

1
09 февр. '10 в 9:04
источник

Как MusiGenesis помещается так красиво, в большинстве баз данных:

схема: база данных: таблица:: план этажа: дом: комната

Но в Oracle может быть проще подумать:

схема: база данных: таблица:: владелец: дом: комната

1
12 апр. '14 в 5:50
источник

Схема не является планом для всей базы данных. Это план/контейнер для подмножества объектов (ex.tables) внутри базы данных.

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

Тем не менее, я не уверен, что вы можете иметь одну таблицу под несколькими схемами. Пользовательский интерфейс Management Studio предоставляет выпадающий список для назначения схемы таблице и, следовательно, позволяет выбрать только одну схему. Я думаю, если вы сделаете это с помощью TSQL, он может создать 2 (или несколько) разных объекта с разными идентификаторами объектов.

0
27 марта '13 в 19:01
источник

Схемы содержат базы данных.

Базы данных являются частью схемы.

Итак, схемы > базы данных.

Схемы содержат представления, хранимую процедуру (ы), базу данных (ы), триггер и т.д.

0
04 дек. '11 в 19:02
источник

База данных схема - это способ логически группировать объекты, такие как таблицы, представления, хранимые процедуры и т.д. Подумайте о схеме как контейнере объектов. А таблицы представляют собой коллекции строк и столбцов. комбинация всех таблиц делает db.

0
18 окт. '13 в 12:11
источник

Посмотрите другие вопросы по меткам или Задайте вопрос