Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Зачем нужны схемы БД ?
|
|||
|---|---|---|---|
|
#18+
Не пинайте ногами, но ответа на вопрос не смог найти пересмотрев не один десяток книг по MS SQL (работаю с 2008) и форум. Все ограничиваются историей про то, что раньше схема была тождественна имени пользователи и что схемы можно использовать для разграничения доступа и что за схемами большое и светлое будущее. Никаких рекомендаций связанных с выбором схем при проектировании БД не обнаружил. Например: при проектировании БД торговой информационной системы можно схемой разделить таблицы по типам : справочники, регистры, журналы документов, табличные части документов... А можно по смыслу : управление ассортиментом, товародвижение, ценообразование ... А может они вообще не нужны - только кола больше становится ? Какие будут рекомендации ? Есть умные книжки ? Читать умею. Модератор: Тема перенесена из форума "Проектирование БД". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.02.2009, 01:25 |
|
||
|
Зачем нужны схемы БД ?
|
|||
|---|---|---|---|
|
#18+
Схемы нужны прежде всего для управления правами доступа. А не для типизации. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.02.2009, 10:20 |
|
||
|
Зачем нужны схемы БД ?
|
|||
|---|---|---|---|
|
#18+
А мне вот тоже не совсем понятно... А роли для чего? Можно и ими рулить права. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.02.2009, 10:24 |
|
||
|
Зачем нужны схемы БД ?
|
|||
|---|---|---|---|
|
#18+
Владимир М.А мне вот тоже не совсем понятно... А роли для чего? Можно и ими рулить права. Можно. Аналогия приблизительна как зачем view-ы, если есть select-ы. Схема нужна, чтобы отделить владение объекта от конкретного пользователя ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.02.2009, 10:30 |
|
||
|
Зачем нужны схемы БД ?
|
|||
|---|---|---|---|
|
#18+
Владимир М.А мне вот тоже не совсем понятно... А роли для чего? Можно и ими рулить права.Может, можно провести такую аналогию: Роли - это группы пользователей. Схемы - это группы ресурсов. Честно говоря, сам никогда схемами не пользовался. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.02.2009, 10:33 |
|
||
|
Зачем нужны схемы БД ?
|
|||
|---|---|---|---|
|
#18+
Владимир М.А мне вот тоже не совсем понятно... А роли для чего? Можно и ими рулить права. Схемы дают твоей машине дополнительный руль. Можно в принципе и без них, но сними удобнее. Еще схемы играют важную роль в цепочках владения. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.02.2009, 10:34 |
|
||
|
Зачем нужны схемы БД ?
|
|||
|---|---|---|---|
|
#18+
alexeyvgВладимир М.А мне вот тоже не совсем понятно... А роли для чего? Можно и ими рулить права.Может, можно провести такую аналогию: Роли - это группы пользователей. Схемы - это группы ресурсов. Честно говоря, сам никогда схемами не пользовался. Самое смешное, что сам я пользуюсь схемами... утилитарно, так сказать. Есть схема test, в которой создаются объекты, тестируются и после успешного результата переносятся в схему dbo. Но это разделение ресурсов, а не доступа. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.02.2009, 10:53 |
|
||
|
Зачем нужны схемы БД ?
|
|||
|---|---|---|---|
|
#18+
Хотя конечно назначая права на схемы различным пользователям можно очень удобно разруливать эти права... Я думаю, что понимание придёт после того, как испытаешь это на практике. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.02.2009, 10:56 |
|
||
|
Зачем нужны схемы БД ?
|
|||
|---|---|---|---|
|
#18+
Схема в MSSQL Server 2005, 2008 - пространство имен, которому можно дать определенные разрешения. Смотрите первоисточник . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.02.2009, 11:18 |
|
||
|
Зачем нужны схемы БД ?
|
|||
|---|---|---|---|
|
#18+
Владимир М.Хотя конечно назначая права на схемы различным пользователям можно очень удобно разруливать эти права... Я думаю, что понимание придёт после того, как испытаешь это на практике. Т.е. если я правильно понял, то желательно, чтобы схемы отображала реальное "жизненное" разделение возможных служебных обязанностей пользователей. Получается правильнее делить по смыслу : управление ассортиментом, товародвижение, ценообразование ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.02.2009, 13:36 |
|
||
|
Зачем нужны схемы БД ?
|
|||
|---|---|---|---|
|
#18+
Вот прочитал и ничего не понял... тоже порылся, поискал, но так и не нашел зачем эти схемы нужны, особенно в sql server 2008, ими могут владеть пользователи и они имеют список пользователей, притом для чего они вообще не ясно... есть роли, в которых можно манипулировать данными раздавать права, зачем тогда схемы? вообще хоть один пример приведите где их применяют? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2009, 14:44 |
|
||
|
Зачем нужны схемы БД ?
|
|||
|---|---|---|---|
|
#18+
SandistВот прочитал и ничего не понял... тоже порылся, поискал, но так и не нашел зачем эти схемы нужны, особенно в sql server 2008, ими могут владеть пользователи и они имеют список пользователей, притом для чего они вообще не ясно... есть роли, в которых можно манипулировать данными раздавать права, зачем тогда схемы? вообще хоть один пример приведите где их применяют? А теперь подумайте, что должно произойти с объектом, которым владеет пользователь, при удалении этого пользователя из базы ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2009, 18:35 |
|
||
|
Зачем нужны схемы БД ?
|
|||
|---|---|---|---|
|
#18+
Glory, неужели аннигилироваться? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2009, 00:00 |
|
||
|
Зачем нужны схемы БД ?
|
|||
|---|---|---|---|
|
#18+
И что теперь, если я программист и создал валом ХП, теперь меня увольняют и удаляют логин, следовательно все мои ХП увольняются со мной? :-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2009, 13:09 |
|
||
|
Зачем нужны схемы БД ?
|
|||
|---|---|---|---|
|
#18+
SandistИ что теперь, если я программист и создал валом ХП, теперь меня увольняют и удаляют логин, следовательно все мои ХП увольняются со мной? :-) По вашей логике - да По логике со схемой данных - нет, у схемы меняется владелец ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2009, 13:17 |
|
||
|
Зачем нужны схемы БД ?
|
|||
|---|---|---|---|
|
#18+
SandistИ что теперь, если я программист и создал валом ХП, теперь меня увольняют и удаляют логин, следовательно все мои ХП увольняются со мной? :-) это и есть мечта девелопера ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2009, 13:19 |
|
||
|
Зачем нужны схемы БД ?
|
|||
|---|---|---|---|
|
#18+
Короче есть реальный ответ чем что можно сделать схемой и нельзя ролью? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2009, 13:20 |
|
||
|
Зачем нужны схемы БД ?
|
|||
|---|---|---|---|
|
#18+
а теперь представь что тебе надо написать процедуру которая ведет себя по разному для разных пользователей... при участие схем это разруливается на уровне системы, а без схем - только на уровне процедуры.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2009, 13:21 |
|
||
|
Зачем нужны схемы БД ?
|
|||
|---|---|---|---|
|
#18+
SandistКороче есть реальный ответ чем что можно сделать схемой и нельзя ролью? Нельзя удалить пользователя, если он владеет объектом Схема - это контейнер для объектов Роль - это контейнер для пользователей Как вы, например, будете давать права на объекты относящиеся к проекту "Отдел кадров" ? Будете каждый раз сверять список этих объектов в свойствах роли и на бумажке ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2009, 13:26 |
|
||
|
Зачем нужны схемы БД ?
|
|||
|---|---|---|---|
|
#18+
GlorySandistКороче есть реальный ответ чем что можно сделать схемой и нельзя ролью? Нельзя удалить пользователя, если он владеет объектом Схема - это контейнер для объектов Роль - это контейнер для пользователей Как вы, например, будете давать права на объекты относящиеся к проекту "Отдел кадров" ? Будете каждый раз сверять список этих объектов в свойствах роли и на бумажке ? Однако пользователь может входить одновременно в разные роли, а объект только в одну схему ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2009, 13:53 |
|
||
|
Зачем нужны схемы БД ?
|
|||
|---|---|---|---|
|
#18+
WizandrGlorySandistКороче есть реальный ответ чем что можно сделать схемой и нельзя ролью? Нельзя удалить пользователя, если он владеет объектом Схема - это контейнер для объектов Роль - это контейнер для пользователей Как вы, например, будете давать права на объекты относящиеся к проекту "Отдел кадров" ? Будете каждый раз сверять список этих объектов в свойствах роли и на бумажке ? Однако пользователь может входить одновременно в разные роли, а объект только в одну схему А в схему могут входить множество типов объектов, а роль - всего два. И что дальше ? Вы пытаетесь сравнивать контейнеры разных типов ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2009, 13:56 |
|
||
|
Зачем нужны схемы БД ?
|
|||
|---|---|---|---|
|
#18+
GlorySandistКороче есть реальный ответ чем что можно сделать схемой и нельзя ролью? Нельзя удалить пользователя, если он владеет объектом Схема - это контейнер для объектов Роль - это контейнер для пользователей Как вы, например, будете давать права на объекты относящиеся к проекту "Отдел кадров" ? Будете каждый раз сверять список этих объектов в свойствах роли и на бумажке ? А если, например, таблица бух.платежи нужна еще и финансистам, а иногда и директору, а не только бухгалтерам? Все равно по бумажке... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.12.2009, 13:18 |
|
||
|
Зачем нужны схемы БД ?
|
|||
|---|---|---|---|
|
#18+
По-моему, логическая цепочка, обуславливающая присутствие схем в MS SQL такова: 1. Изначальный (до SQL Server 2005) постулат о наименовании объектов в виде: [DatabaseServer].[DatabaseName].[ObjectOwner].[DatabaseObject] причем - ObjectOwner = пользователь базы (database user). Очевидны недостатки - если какой-то пользователь когда-то умудрился создать объект, который оказался необходимым и используемым, то имя этого пользователя оказывается увековеченным в базе (удалить его нельзя). 2. Для 2005-го сервера идеологию "владельца - пользователя" расширили до "схемы" - самостоятельной сущности, грубо говоря "группы объектов", которая в свою очередь имеет владельца. Обходится недостаток жесткой привязки имени объекта к владельцу объекта - пользователю базы (владелец схемы может быть сменен и после этого удален), появляются некоторые (не совсем критичные, на мой взгляд) теоретические удобности (разбиение объектов по схемам, назначение прав "кучей" - на все объекты, входящие в схему). Главное - сохраняется правило наименования объектов, что позволяет достигнуть более-менее безболезненного перехода с предыдущих версий. Мое мнение - главная необходимость наличия схем - в совместимости с предыдущими версиями. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.12.2009, 14:36 |
|
||
|
Зачем нужны схемы БД ?
|
|||
|---|---|---|---|
|
#18+
SoftRainПо-моему, логическая цепочка, обуславливающая присутствие схем в MS SQL такова: 1. Изначальный (до SQL Server 2005) постулат о наименовании объектов в виде: [DatabaseServer].[DatabaseName].[ObjectOwner].[DatabaseObject] причем - ObjectOwner = пользователь базы (database user). Очевидны недостатки - если какой-то пользователь когда-то умудрился создать объект, который оказался необходимым и используемым, то имя этого пользователя оказывается увековеченным в базе (удалить его нельзя). 2. Для 2005-го сервера идеологию "владельца - пользователя" расширили до "схемы" - самостоятельной сущности, грубо говоря "группы объектов", которая в свою очередь имеет владельца. Обходится недостаток жесткой привязки имени объекта к владельцу объекта - пользователю базы (владелец схемы может быть сменен и после этого удален), появляются некоторые (не совсем критичные, на мой взгляд) теоретические удобности (разбиение объектов по схемам, назначение прав "кучей" - на все объекты, входящие в схему). Главное - сохраняется правило наименования объектов, что позволяет достигнуть более-менее безболезненного перехода с предыдущих версий. Мое мнение - главная необходимость наличия схем - в совместимости с предыдущими версиями.Мне кажется, ошибочно рассматривать схему с точки зрения одной частной реализации SQL Server (фирмой Microsoft). Дело в том, что схема - понятие, включённое (и давно) в стандарт SQL ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.12.2009, 14:51 |
|
||
|
Зачем нужны схемы БД ?
|
|||
|---|---|---|---|
|
#18+
iapМне кажется, ошибочно рассматривать схему с точки зрения одной частной реализации SQL Server (фирмой Microsoft). Дело в том, что схема - понятие, включённое (и давно) в стандарт SQL Согласен, конечно, я не спорю, что схемы имеют теоретическое обоснование. Ведь и до 2005 их наличие, хотя и в неуклюжей реализации, было обусловлено (наверное как раз стандартами языка SQL). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.12.2009, 15:08 |
|
||
|
|

start [/forum/topic.php?fid=46&msg=35808100&tid=1687298]: |
0ms |
get settings: |
10ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
81ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
64ms |
get tp. blocked users: |
2ms |
| others: | 253ms |
| total: | 445ms |

| 0 / 0 |
