Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Объединение таблиц при помощи SCHEMA / 9 сообщений из 9, страница 1 из 1
24.10.2007, 13:53
    #34891211
WStealth
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Объединение таблиц при помощи SCHEMA
Hi ALL!

Вопросик пустяковый:

Есть, например, 5 таблиц относящиеся по смыслу к одной функциональности.

Т.е. например, таблица сотрудников, таблица отпусков сотрудников, таблица истории передвижения по фирме и должностям сотрудников и т.д.

Все эти таблицы относятся к сотрудникам фирмы.

И есть например 10 таблиц, которые относятся к заказчикам...

Хотелось бы видеть их имена понятными и что бы один взгляд сразу дал бы понять к чему относится эта таблица.

Возможные решения:

1. именовать таблицы примерно так:
dbo.Employees.Vacations, dbo.Employees.Histories, dbo.Customers.Discounts и т.д.
возможная проблема в именовании (а точнее проверки OBJECT_ID) хранимых процедур.
у меня почемуто не хочет проверять : IF OBJECT_ID(N'dbo.Employees.GetAccessByID',N'P') IS NOT NULL

2. создать схему (CREATE SCHEMA) Employees и Customers, и тогда таблицы будут примерно такими:
Employees.Vacations, Employees.Histories, Customers.Discounts и т.д.

Вопрос: Как все же правильней, и как это делаете Вы (используя свой богатый опыт)???
...
Рейтинг: 0 / 0
24.10.2007, 14:17
    #34891324
sergey888
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Объединение таблиц при помощи SCHEMA
EMP_Vacantion
EMP_History
...
Рейтинг: 0 / 0
24.10.2007, 14:32
    #34891383
WStealth
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Объединение таблиц при помощи SCHEMA
sergey888EMP_Vacantion
EMP_History

т.е. как я понял вариант 1.
т.е. таблицы будут:
dbo.EMP_Vacations, dbo.EMP_Histories, dbo.СMP_Discounts и т.д.
так?

и еще, как расшифровывается EMP?
...
Рейтинг: 0 / 0
24.10.2007, 14:36
    #34891399
sergey888
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Объединение таблиц при помощи SCHEMA
EMP - сокращение от Employее
CUST (CST) - Customer
и т.д.
...
Рейтинг: 0 / 0
24.10.2007, 14:47
    #34891450
WStealth
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Объединение таблиц при помощи SCHEMA
А по моему удобнее все таки с SCHEMA: т.е.

Employees.Histories намного понятнее EMP_Histories и имеет вид более похожий на объектный

Да и вообще, мне кажется в базах сокращения - это не верно...

Это хорошо когда только EMP и CUST, а если этих сокращений более 50???

Let the Force be with You...
...
Рейтинг: 0 / 0
24.10.2007, 15:07
    #34891554
WStealth
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Объединение таблиц при помощи SCHEMA
И кстати AdventureWorks тоже сделан через SCHEMA:

SCHEMA: HumanResources
Employee Table

Department Table

SCHEMA: Person

Contact Table

Address Table

StateProvince Table

SCHEMA: Production

BillOfMaterials Table

Product Table

WorkOrder Table

SCHEMA: Purchasing

PurchaseOrderDetail Table

PurchaseOrderHeader Table

Vendor Table

SCHEMA: Sales

Customers and sales-related data.

Customer Table

SalesOrderDetail Table

SalesOrderHeader Table

Только сделано это для упрощенного наименования или же для разграничения прав доступа... :о(

Let the Force be with You...
...
Рейтинг: 0 / 0
24.10.2007, 15:57
    #34891795
WStealth
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Объединение таблиц при помощи SCHEMA
На MSDN вот что написано:
MicrosoftIn the AdventureWorks sample OLTP database, objects such as tables, views, and procedures are contained in schemas. Schemas change the way in which these objects can be accessed
Что если перевести говорит о том, что схемы меняют путь доступа к данным объектам...

Так как же все таки верно именовать таблицы???
...
Рейтинг: 0 / 0
24.10.2007, 16:18
    #34891903
sergey888
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Объединение таблиц при помощи SCHEMA
смысл схем в том, что в разных схемах можно иметь таблицы (объекты) с одинаковыми именами
и таблица
emp.emd_vacans
не имеет никакого отношения к таблице
cstm.emd_vacans

это совершенно разные объекты и донные в них тоже разные
...
Рейтинг: 0 / 0
25.10.2007, 10:56
    #34893507
Shtock
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Объединение таблиц при помощи SCHEMA
Ну не знаю как в MS, но лично я в оракле замучался со схемами и стал пользовать префиксы. Потому как на объекты разных схем нужно отдельно давать гранты. И таким образом приходится чтобы создать констрейнт фореигновый еще и гранты на селект и на референс давать.
...
Рейтинг: 0 / 0
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Объединение таблиц при помощи SCHEMA / 9 сообщений из 9, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]