Концепция схемы в PostgreSQL

8

Я не могу понять концепцию и использование схемы в PostgreSQL. Я понятия не имею, как это может повлиять на мой дизайн базы данных. Почему я должен использовать это?

Может ли это повлиять на меня в будущем, если я решу не думать о них сейчас и беспокоиться о них позже?

Пояснение с примером будет приятно.

codecool
источник

Ответы:

13

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

Пространство имен, потому что два объекта могут иметь одно и то же имя в разных схемах, а затем на них указывают schema.objectнотации, что особенно полезно в сочетании с search_path(многие модули contrib делают это, например, xml2 ). Безопасность, потому что теперь вы можете сделать grant ... on all tables in schema.

Джек говорит, попробуйте topanswers.xyz
источник
3
Одна из очень интересных вещей, которую вы можете сделать со схемами, - это заменить объекты по умолчанию из других проектов. Например, мы используем вики в отдельных схемах и представлении, позволяющем интегрировать Викимедиа с нашим приложением на работе. для кода Викимедиа, это просто старая старая Викимедиа в схеме, но на самом деле пользователи и группы приходят из нашего приложения и переопределяют то, что ожидает Викимедиа. Таким образом, информация о пользователе / ​​группе сохраняется не дважды, один раз в нашем приложении и один раз в Викимедиа, но только в нашем приложении.
Скотт Марлоу
Мне это нравится :-)
Джек говорит попробуйте topanswers.xyz