문제

이 테이블이 있다고 말합니다.

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

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

PersonAddressid가 PersonId이고 외국 키 인 경우. 외국 키를 바꾸는 데있어 데이터베이스 위반이 있습니까? 이름이 다른 경우 일하는 것이 매우 혼란 스러울 수 있습니다.

도움이 되었습니까?

해결책

일반적으로 외국 키 열을 가능한 경우 참조하는 기본 키 열과 동일하게 지정하는 것이 도움이됩니다.

물론 때로는 불가능합니다.

  • 두 개의 열이 있습니다 Address 둘 다 외국 열쇠 일 수 있습니다 Person, 분명히 두 열의 이름을 지정할 수 없습니다 PersonId.
  • 일부 테이블에는 외국 키 자체가 포함되어 있습니다. Employee.manager_id 에 대한 참조가 될 수 있습니다 Employee.employee_id. 다시 말하지만,이 시나리오에서 열을 참조 된 기본 키와 동일하게 지정할 수는 없습니다.

SQL에는 엄격한 명명 규칙이 없습니다. 제안 된 메타 데이터 명명 규칙의 한 출처는 다음과 같습니다 ISO 11179.

다른 팁

합의 된 이유는 컨벤션이 PersonAddressId를 PersonID로 지명하는 이유입니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top