Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
 схемам (schema)  [new]
bublikom
Member

Откуда:
Сообщений: 33
Создавая очередную логическую группу таблиц в PowerDesigner (было 7 таблиц OnlineOrder, добавил 5 таблиц GeoData) столкнулся с проблемой: в Management Studio таблицы перемешались между собой, и теперь это логическое визуальное разделение потеряло смысл.

Есть ли возможность создавать таблицы в разных схемах, но без указания схемы в запросах:
не
select * from SchemaName.Table
а сразу
select * from Table

Или есть какието средсва Management Studio для визуального разделения групп таблиц?
11 сен 09, 15:45    [7648518]     Ответить | Цитировать Сообщить модератору
 Re: схемам (schema)  [new]
Le Peace
Member

Откуда: Москва
Сообщений: 8969
А что Вам мешает указывать схемы в запросах?
11 сен 09, 16:06    [7648668]     Ответить | Цитировать Сообщить модератору
 Re: схемам (schema)  [new]
Дедушка
Member

Откуда: Город трёх революций
Сообщений: 5111
В MSSQL схемы для управления правами, а не для гламура.
По вашему вопросу: в SSMS в Object Explorer есть возможность настройки фильтров (это не совсем то... точнее совсем не то :) но отчасти может помочь).
Если уж на то пошло вводите префиксы.
11 сен 09, 16:08    [7648685]     Ответить | Цитировать Сообщить модератору
 Re: схемам (schema)  [new]
Le Peace
Member

Откуда: Москва
Сообщений: 8969
Дедушка
В MSSQL схемы для управления правами
Почему Вы думаете, что только для управления правами?
11 сен 09, 16:20    [7648766]     Ответить | Цитировать Сообщить модератору
 Re: схемам (schema)  [new]
bublikom
Member

Откуда:
Сообщений: 33
спасибо за ответы!

схемы в запросах выглядят тяжеловато, точнее наглядность присутсвует, но при написании имхо будут грабли. Допустим, у меня в схеме OnlineOrder есть таблица OnlineOrder - придётся это всё дублировать..

фильтры видел - в этом виде от них толку мало
я думал про префиксы, этот вариант не подходит.

я так понял, если у меня есть 2 схемы то я не могу дать права пользователю так, чтобы он не указывал в запросах их имена?

всё было бы отлично, если бы можно както создавать группы таблиц в SSMS, но у него такого функционала я не нашел
11 сен 09, 16:21    [7648774]     Ответить | Цитировать Сообщить модератору
 Re: схемам (schema)  [new]
Le Peace
Member

Откуда: Москва
Сообщений: 8969
bublikom,
если выглядят тяжеловато, то можно использовать синонимы.
Рекомендуется кстати использовать двухчастные имена, чтобы упростить работу серверу.
11 сен 09, 16:22    [7648785]     Ответить | Цитировать Сообщить модератору
 Re: схемам (schema)  [new]
Glory
Member

Откуда:
Сообщений: 104760
bublikom

я так понял, если у меня есть 2 схемы то я не могу дать права пользователю так, чтобы он не указывал в запросах их имена?



To resolve the names of securables that are not fully qualified, SQL Server 2000 used name resolution to check the schema owned by the calling database user and the schema owned by dbo.

In SQL Server 2005, each user can be assigned a default schema. The default schema can be set and changed by using the DEFAULT_SCHEMA option of CREATE USER or ALTER USER. If DEFAULT_SCHEMA is not defined, SQL Server 2005 will assume that the dbo schema is the default schema.
11 сен 09, 16:24    [7648798]     Ответить | Цитировать Сообщить модератору
 Re: схемам (schema)  [new]
Дедушка
Member

Откуда: Город трёх революций
Сообщений: 5111
Le Peace
Дедушка
В MSSQL схемы для управления правами
Почему Вы думаете, что только для управления правами?

я же не написал "только" :)
11 сен 09, 16:27    [7648826]     Ответить | Цитировать Сообщить модератору
 Re: схемам (schema)  [new]
bublikom
Member

Откуда:
Сообщений: 33
Le Peace

честно говоря, упрощать работу надо бы нашей команде а не серверу)

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

нагляднее всего это выглядит в дереве таблиц с разными схемами, а с синонимами немного через плечо
11 сен 09, 16:32    [7648879]     Ответить | Цитировать Сообщить модератору
 Re: схемам (schema)  [new]
bublikom
Member

Откуда:
Сообщений: 33
я думаю синонимы тут не подойдут. я хотел сделать процесс обучения схеме максимально простым, да и наглядность в работе не помешала бы, а тут только усложняется всё
11 сен 09, 16:39    [7648949]     Ответить | Цитировать Сообщить модератору
 Re: схемам (schema)  [new]
Le Peace
Member

Откуда: Москва
Сообщений: 8969
bublikom,

ни чем Вам не угодишь... :)
11 сен 09, 16:42    [7648984]     Ответить | Цитировать Сообщить модератору
 Re: схемам (schema)  [new]
bublikom
Member

Откуда:
Сообщений: 33
добавлю я синонимы, а в него клацнув даже проперти таблицы не посмотришь, везде добавляется звено, наглядность теряется.
11 сен 09, 16:45    [7649022]     Ответить | Цитировать Сообщить модератору
 Re: схемам (schema)  [new]
Le Peace
Member

Откуда: Москва
Сообщений: 8969
bublikom, так Вы в запросах используйте синонимы, а в дереве смотрите на полные имена. Или я чего-то не понял?
11 сен 09, 16:54    [7649084]     Ответить | Цитировать Сообщить модератору
 Re: схемам (schema)  [new]
bublikom
Member

Откуда:
Сообщений: 33
дада, так и есть. но в купе с тем что надо помнить имена синонимов (даже пусть есть чёткое правило) и тем что добавляются новые сущности, очень намахано получается: чёрт с ним, первоначальная ситуация, когда таблицы врассыпную выглядит проще
11 сен 09, 17:43    [7649411]     Ответить | Цитировать Сообщить модератору
 Re: схемам (schema)  [new]
Le Peace
Member

Откуда: Москва
Сообщений: 8969
bublikom, имена синонимов помнить не нужно, если они совпадают с именами таблиц, только добавляют к ним схему.
11 сен 09, 18:04    [7649499]     Ответить | Цитировать Сообщить модератору
 Re: схемам (schema)  [new]
bublikom
Member

Откуда:
Сообщений: 33
т.е. синонимы создаются в схеме синонимов, точно. это я упустил. этот вариант думаю подходит, надо проверить

спасибо за участвие)
11 сен 09, 18:07    [7649518]     Ответить | Цитировать Сообщить модератору
 Re: схемам (schema)  [new]
DeColo®es
Member

Откуда: Москва
Сообщений: 5499
Блог
bublikom
Допустим, у меня в схеме OnlineOrder есть таблица OnlineOrder - придётся это всё дублировать..
А вот это зря...
Я придерживаюсь такой схемы (в разных проектах немного отличается, но суть одна):
Берем ваши данные онлайн-заказов: OnlineOrders.
Создаем схему OnlineOrders, в ней объекты:
Data - непосредственно таблица с данными
Write - процедура изменения данных
DataRight - представление, данные из которого "видны" с учетом прав пользователя.
Log - таблица с историей изменений и т.д.

В одном из проектов в каждой схеме лежит по 30-50 таких "стандартных" объектов, естественно большинство генерится автоматически.
11 сен 09, 19:17    [7649778]     Ответить | Цитировать Сообщить модератору
 Re: схемам (schema)  [new]
bublikom
Member

Откуда:
Сообщений: 33
DeColo®es

спасибо за совет, действительно в этом есть смысл) я гляну, пока не поздно, мб перейдем на такую схему
11 сен 09, 20:27    [7649899]     Ответить | Цитировать Сообщить модератору
 Re: схемам (schema)  [new]
bublikom
Member

Откуда:
Сообщений: 33
DeColo®es,

единственное но: в связи с пожеланием именовать каждую колонку уникальным именем, у нас введено префексирование, т.е. у таблицы OnlineOrder колонки именованы ooId, ooCost, ooDate - для будущего анализа, где в коде используются эти колонки; префексирование же из 3х символов уже будет напряжно - OnlineOrder.Data.oodId oodCost oodDate [мб, я преувеличиваю =) ].

Я не сильно настроен уходить от префексирования, потому что во многих случаях, можно упустить использование какойто колонки (например, если в запросе используется алиас, и я никак не найду использование ood1.Id, ood2.Id).

p.s. Зачем мне знать где в коде используется колонка, рассказывать не стану, надеюсь это очевидно.
11 сен 09, 20:51    [7649961]     Ответить | Цитировать Сообщить модератору
 Re: схемам (schema)  [new]
DeColo®es
Member

Откуда: Москва
Сообщений: 5499
Блог
Обязательное использование алиасов для всех столбцов в любом запросе лично мне видится гороздо более практичным, нежели "префексирование" столбцов.
В более-менее серьезных проектах нечасто не встречаются запросы из одной таблицы.
Ну а запросы, в которых одна и та же таблица используется более одного раза и без префикса никакая уникальность имени столбца уже не работает - наоборот не редкость.
11 сен 09, 23:16    [7650344]     Ответить | Цитировать Сообщить модератору
 Re: схемам (schema)  [new]
bublikom
Member

Откуда:
Сообщений: 33
дада, вы правы, в ущерб скорости, надо указывать полный алиас. я думаю, мы откажемся от префексирования, пока не поздно.

в продолжение: завёл тему про именование
12 сен 09, 17:48    [7651224]     Ответить | Цитировать Сообщить модератору
 Re: схемам (schema)  [new]
bublikom
Member

Откуда:
Сообщений: 33
а внешний ключ на другую схему оформляется без проблем?
13 сен 09, 12:11    [7652343]     Ответить | Цитировать Сообщить модератору
 Re: схемам (schema)  [new]
DeColo®es
Member

Откуда: Москва
Сообщений: 5499
Блог
bublikom
а внешний ключ на другую схему оформляется без проблем?
А попробовать что мешает? ;)
14 сен 09, 12:34    [7654630]     Ответить | Цитировать Сообщить модератору
 Re: схемам (schema)  [new]
bublikom
Member

Откуда:
Сообщений: 33
не мог по удалёнке зайти.

если честно, ехал в поезде и передумал работать со схемами) и префексирование придётся оставить. всё оставлю по-старому, максимум EMS поставлю
14 сен 09, 12:57    [7654822]     Ответить | Цитировать Сообщить модератору
 Re: схемам (schema)  [new]
Ken@t
Member

Откуда: 大地
Сообщений: 3264
Зря
14 сен 09, 13:41    [7655191]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
Все форумы / Microsoft SQL Server Ответить