Есть ли необходимость в пространствах имен в базе данных? - PullRequest
3 голосов
/ 30 июля 2009

Часто меня разочаровывает тот факт, что существует множество таблиц, представлений, хранимых процедур, которые размещены в одной иерархии. Я ищу способ (например, пространства имен), который бы группировал связанные таблицы под одним баннером. Это было бы не только легко понять. Также я бы избежал необходимости придумывать причудливые имена. Я не знаю ни одного существующего трюка для достижения этого. Пожалуйста, помогите мне, если есть способ, которым я могу использовать для достижения подобного эффекта.

Спасибо

Ответы [ 2 ]

1 голос
/ 30 июля 2009

Если вы используете SQL 2000, вы застряли с использованием владельцев баз данных в качестве пространств имен, что является болезненным, поскольку требует от вас изобретать пользователей только для их пространств имен.

В SQL 2005 вы можете создавать схемы, которые по сути являются пространствами имен.

Во всех базах данных SQL вы можете использовать префиксы, например, hr_ для персонала, sys_ для системы и т. д.

0 голосов
/ 30 июля 2009

Я не думаю, что есть необходимость в пространствах имен в базах данных, потому что "пространством имен" по умолчанию обычно является имя базы данных. Обычно в любом приложении гораздо больше «функциональных возможностей», которые необходимо сгруппировать, чем базовые данные, поэтому концепция пространства имен работает лучше для кода, чем для хранения данных.

Однако, если вы хотите сделать это с вашими таблицами, SQL поддерживает точки (.) В имени таблицы, поэтому вы можете иметь Contacts.Address или что-то подобное, если хотите.

Обычно, хотя, если у вас столько таблиц, я думаю, что вашим именем таблицы будет, по сути, «пространство имен» + имя таблицы без точки (т.е. ContactAddress ).

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