Путаница со схемой базы данных - PullRequest
1 голос
/ 20 марта 2009

У меня небольшой спад терминологии при разработке некоторых классов. В Sql Server 2005 «схема» относится к пространству имен и организационной системе для объектов базы данных. Но для реляционных баз данных в целом «схема» означает конструкцию таблиц, полей и т. Д. DDL. Если я не ошибаюсь, это объясняет большой диссонанс, когда я пытаюсь читать документацию Microsoft и понимать различные данные API доступа. Не могли бы вы объяснить, что здесь происходит, действительно ли так много различий в определении «схемы»?

Ответы [ 2 ]

3 голосов
/ 20 марта 2009

Да, к сожалению, слово "схема" перегружено поставщиками баз данных.

" SQL-99 завершен, действительно " говорит:

Каталог SQL - это именованная группа схем. ...

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

  • Базовые таблицы и представления
  • Домены и UDT
  • Ограничения и утверждения
  • Наборы символов
  • 1021 * Параметры сортировки *
  • Переводы
  • Триггеры
  • Модули SQL-сервера
  • вызываемые SQL подпрограммы

Oracle взаимозаменяемо использует «схему» и «пользователя», что всегда заставляет мои брови подняться.

MySQL использует SCHEMA как синоним для DATABASE.

PostgreSQL использует «схему», но использует «базу данных» для ссылки на то, что стандартный SQL называет «каталогом».

0 голосов
/ 20 марта 2009

Вы правы. Когда в SQL 2005/2008 «схема» относится к пространству имен, тогда как в обсуждении реляционной базы данных «схема» относится к логической структуре таблиц, представлений, процедур, функций и т. Д.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...