2011-10-26 4 views
0

XML 문서 모음이 있습니다. 이 문서의 메타 데이터와 데이터를 MySQL 데이터베이스에 저장해야합니다. DB에 정보를 저장하기 위해 3 개의 테이블을 만들었습니다.데이터베이스 정규화 (1 대 다수)

1- 문서 (DOCID (PK), docName 같은 평문, 일자, 작성자)
2- 요소 (elementId로부터 (PK) DOCID (FK)가 elementName, elementValue)
-3- 특성 (AttributeID와 (PK), elementId (fk), attributeName, attributeValue)

이것은 본질적으로 ... 많은 xml 문서가 있다는 것을 의미합니다. 각 xml 문서에는 많은 요소가 있으며 각 요소에는 많은 특성이있을 수 있습니다.이 단계를 제대로 수행하지 못했습니다. 나는 데이터베이스 정규화를 의미합니다 .. 세 번째 정규 형식의 이러한 테이블입니까?

+1

매우 짧은에

  • 기능적인 종속 관계 : 없음 대답 : 예 – knittl

  • +1

    생각해 봐야 할 것 : 데이터베이스 스키마가 중첩 된 XML 요소를 어떻게 처리합니까? 또는 문서에 중첩 요소가 없다고 확신합니까? –

    +0

    @ Jan-Henk : 음 ... 좋은 지적. 나는 그것에 대해 생각하지 않았다. 나는 중첩 된 요소가 있고 이것은 왜 요소 테이블에서 외래 키 값으로 만 마지막 elementId 값을 얻고 있는지 설명합니다. 그리고 거기에 뭔가가 내 db 디자인에 문제가 있다고 생각했습니다. : D ... thanks 이것을 지적하기 위해 .. 어떤 제안 ?? – user1014923

    답변

    0

    예,이 테이블은 3NF에 따라 정규화됩니다. 단, 세 가지 간단한 규칙에 없습니다 :

  • 없음 부분 종속 연결된 키에

    • 없음 반복 요소 또는 요소 그룹은 키가 아닌 속성