Должен ли я использовать dbo по умолчанию или пользовательскую схему для общих таблиц в многопользовательской базе данных? - PullRequest
2 голосов
/ 21 августа 2009

У меня есть база данных, которая собирается записывать данные для разных клиентов. Большинство клиентов имеют одинаковые требования к данным; однако, это не всегда так. Для различных требований я собираюсь создать таблицы расширений, которые будут соответствовать их потребностям. Для каждого клиента я собираюсь создать схему, а затем добавлю конкретные таблицы расширений, представления и т. Д. В их схему.

Однако, для общих таблиц данных, я должен создать их по схеме dbo по умолчанию или вместо этого я должен создать новую схему?

Спасибо.

Ответы [ 2 ]

1 голос
/ 21 августа 2009

Я бы создал схему Common. Вы не хотите предоставлять своим пользователям доступ к схеме dbo, если можете помочь. Особенно, если у вас есть статистика и т. Д.

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

0 голосов
/ 21 августа 2009

Единственная причина использования схемы dbo - это удобство, поэтому вам не нужно детально планировать роли, права и требования к схемам. Однако, если вы уже планируете многосхемную базу данных, я определенно рекомендую вам спланировать свою собственную общую схему приложения и оставить схему dbo для явных объектов DBA / privved.

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

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