В чем разница между схемой и словарем данных? - PullRequest
6 голосов
/ 25 июня 2010

Определение схемы - логическая структура данных в базе данных.Он принадлежит пользователю и имеет то же имя, что и пользователь базы данных.Схема содержит имя таблицы, тип столбца и т. Д. И словарь данных также содержит только метаданные (конечно, на уровне базы данных, а не на уровне пользователя).В чем разница между схемой и словарем данных?

Ответы [ 2 ]

8 голосов
/ 25 июня 2010

Эти определения взяты из моего опыта (программист 20+ лет, 7 лет в консалтинге, некоторое время в качестве независимого подрядчика). YMMV.

«Схема» описывает структуру. Это может включать метаданные, которые описывают аспекты структуры.

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

Например, «персона» может быть описана обычными полями - фамилия, имя, почетное имя и т. Д. Если есть связь с другим человеком - отцом, мужем и т. Д. - эти значения можно считать «данными схемы» потому что отношения ограничены конкретными значениями.

То, что «человек» является «учеником», «учителем» или «заключенным» и т. Д., Определяется словарем данных для конкретной системы.

4 голосов
/ 25 июня 2010

Обычно «схема» означает «внутри СУБД». Обычно это означает некоторый технический минимум. Возможно, дополнено одним полем «комментарий».

Словарь данных обычно означает «вне СУБД». Как правило, это означает некоторую более крупную и более сложную структуру, которая не ограничивается технологией таблиц / столбцов СУБД.

Если бы у вас было два конкретных примера конкретной схемы (например, Oracle) и специальный словарь данных для сравнения, у вас была бы «точная» разница.

...