2009-02-02 2 views
1

Скажем, у меня есть эта таблица:ереименование DB столбец в таблицу ссылок

Person table 
-------------- 
PersonId 

Address table 
------------ 
AddressId 
PersonAddressId 

где PersonAddressId является PersonId и внешний ключ. Существует ли какой-либо тип нарушения базы данных при переименовании внешнего ключа? С их помощью может возникнуть смущение, когда у них будут разные имена.

+0

Соглашение должно называть Foreign Key PersonId, а не PersonAddressId –

ответ

1

Обычно полезно называть столбец внешнего ключа таким же, как и столбцом первичного ключа, на котором он ссылается, где это возможно.

Конечно, иногда это не представляется возможным:

  • Две колонны в Address может быть как внешние ключи Person, так что, очевидно, вы не можете назвать обе колонки PersonId.
  • Некоторые таблицы содержат внешний ключ для себя, например. Employee.manager_id может быть ссылкой на Employee.employee_id. Опять же, вы не можете назвать столбец таким же, как ссылочный первичный ключ в этом сценарии.

В SQL нет строгих соглашений об именах. Одним из источников предлагаемых соглашений об именах метаданных является ISO 11179.

0

Согласовано и поэтому соглашение должно называть PersonAddressId как PersonId.

+0

Спасибо. Где я могу найти документацию по правилу? Я хотел бы что-то поддержать, кроме знаний о племени (или перешел на лучшую практику). – 4thSpace

Смежные вопросы