나는 함수 종속 집합과 입력 후보 키를 입력으로 받아들이고 연습하고있다. 알고리즘이 있나요? 그리고 그런 경우에 어떻게 FD를 입력 할 수있는 웹 기반 구현이 없습니까? 그리고 출력으로 수퍼 키/후보 키의 목록을 얻으시겠습니까?주어진 후보 키를 찾는 방법 FD : s?
내가 지금 여기에 발견하고 적절한 질문이 언급 한 함수 종속이
B- 곳 how to find the highest normal form for a given relation 무엇인지 내가 연습> G
양방향> CD
EH-> AG
G-> DE
내가이 일을하는지 확인하십시오. 내가 BFHI :
FD_B-> G는 ABCDEFHI-> ABCDEFGHI로 다시 쓰여질 수 있으므로 ABCDEFHI가 수퍼 키인 것으로 나타납니다. FD BI-> CD는 ABEFGHI-> ABCDEFGHI로 다시 쓸 수 있으므로 ABEFGHI는 수퍼 키입니다. FD EH-> AG는 BCDEEFHI-> ABCDEFGHI로 다시 쓸 수 있으므로 BCDEEFHI는 수퍼 키입니다. FD G-> DE는 ABCFGHI-> ABCDEFGHI로 다시 쓸 수 있으므로 ABCFGHI는 수퍼 키입니다.
우리의 수퍼 키에는 BFHI가 모두 들어 있습니다. 따라서 BFHI가 후보 키이고 검사에서 볼 수있는 더 이상 줄일 수 없습니다 (?)
나는 올바른 방법으로 추론합니까? 여기
작동하는지 증대시키는 알고리즘이 처리 할 수있는 또 다른 질문이 있습니다, Database extraneous attributes and decomposition
의 FD : S는
A-> BCD
BC-> DE
B-> D
D-> A
여기서 FB A-> BCD는 AEF-> ABCDEF로 쓸 수 있으므로 AEF는 수퍼 키입니다. FD BC-> DE는 ABCF-> ABCDEF로 재 작성 될 수 있으므로 ABCF는 수퍼 키입니다. FD B-> D는 ABCEF-> ABCDEF로 다시 쓸 수 있으므로 ABCEF는 수퍼 키입니다. FD D -> A는 BCDEF -> ABCDEF로 다시 쓸 수 있으므로 BCDEF는 수퍼 키입니다. 모든 수퍼 키에 대해 F는 모든 슈퍼 키에있는 유일한 구성원이므로 F가 유일한 후보 키입니다.
이 방법이 효과가 있습니까? 어떤 대답/코멘트
에 대한
감사합니다 "이 경우 올 방법에는 웹 기반의 구현은 없다"- 아직 하나를 구축하지 않았기 때문에! –
예 암스트롱의 공리가 있지만 그 방법이 아닙니다. 그것은 단지 FD로 할 수있는 일을 말해줍니다 : s. 나는 정의/공리보다 방법을 찾고 있습니다. 일반적으로 적용 가능한지 확인하기 위해 확대 알고리즘의 다른 응용 프로그램으로 질문을 업데이트하고 있습니다. 귀하의 의견에 많은 감사드립니다. –