Хотя я не специалист по Oracle (на самом деле, этот вопрос должен относиться практически к любой СУБД), мой ответ на вопрос« Какое было самое странное стандартное правило кодирования, которому вы были вынуждены следовать? », кажется, здесь хорошо применим (отредактировано, чтобы иметь смысл в контекст этого поста) ...
Для нас все дело в названии таблицы. Мы получили эту идею от клиента, с которым мы работали, который использовал этот стандарт, и после того, как мы все адаптировались к нему, он нам понравился. Имена таблиц довольно подробны, но из-за уникального мнемонического префикса на всех из них у нас всегда был стандартизированный набор псевдонимов: просто используйте префикс. После того, как мы вышли из этого клиента, мы сохранили схему именования для новых систем, и с тех пор она очень успешна.
Вот схема: каждая таблица названа заглавными буквами с подчеркиванием между словами. Каждая таблица имеет префикс (обычно от 1 до 6 символов), который обычно представляет собой аббревиатуру или аббревиатуру имени основной таблицы. Каждое поле таблицы имеет такой же префикс. Префиксы также используются в сложных запросах в качестве псевдонимов. Итак, допустим, у вас есть простая схема, в которой люди могут владеть кошками или собаками. Это выглядело бы так:
PER_PERSON
PER_ID
PER_NameFirst
PER_NameLast
...
CAT_CAT
CAT_ID
CAT_Name
CAT_Breed
...
DOG_DOG
DOG_ID
DOG_Name
DOG_Breed
...
PERCD_PERSON_CAT_DOG (for the join data)
PERCD_ID
PERCD_PER_ID
PERCD_CAT_ID
PERCD_DOG_ID
Опять же, префиксы служат напоминанием о «рекомендуемых» (и обязательных!) Псевдонимах таблиц при построении объединений. Использование префиксов упростило написание большинства запросов на соединение, поскольку очень редко приходилось явно ссылаться на таблицу перед полем, поскольку даже имена связанных полей имеют префиксы и, следовательно, уже имеют некоторую область видимости.
Хорошим побочным эффектом является то, что в конечном итоге ваши разработчики могут начать обращаться к таблицам в разговоре только с префикса. Приобретенный вкус, конечно ... Но у нас это работает.
person
Community
schedule
17.11.2008