별의 공부 블로그 🧑🏻‍💻
728x90
728x170

관계 설정 (액세스)

개념

  • Microsoft Access 데이터베이스
    • 각 주제별로 테이블을 만들어 저장한 후, 각 테이블의 필드를 조합해서 사용하는 관계형 데이터베이스
  • 관계를 설정하는 것
    • 테이블에 데이터를 저장할때 잘못된 데이터의 입력을 사전에 방지하고, 여러 테이블에 저장된 정보들을 연결하여 가져올 수 있도록 테이블과의 관계를 정의하는 것
    • 관계형 데이터베이스 구축의 가장 기본적인 작업
  • 사용 방법
    • [데이터베이스 도구] -> [관계]  -> [관계]

 

'관계 편집' 대화상자

관계 편집 대화상자

  • '관련 레코드 모두 삭제' 항목이 체크되어 있을 경우
    • 다른 테이블에서 참조하고 있는 레코드를 삭제할 수 있음.
    • 문제의 지시사항대로 다른 테이블에서 참조하고 있는 레코드는 삭제할 수 없도록 설정하려면 '관련 레코드 모두 삭제' 항목을 체크하지 않으면 됨.

 

관계의 종류

① 일대다(1:M)

  • 가장 보편적으로 사용됨.
  • 일대다 관계가 이루어진 원본 테이블의 한 레코드는 참조 테이블의 여러 코드와 대응될 수 있음.
  • 참조 테이블의 한 레코드는 원본 테이블의 한 레코드에만 대응됨.
  • 일대다 관계에서 2개의 관련 테이블 중, '일(1)' 쪽의 기본 테이블(원본 테이블)에는 기본키가 설정되어 있거나, 유일성을 만족시키는 인덱스(중복 불가능)가 설정되어야 함.
    • '다(M)' 쪽의 관련 테이블(참고 테이블)에는 기본키나 인덱스가 설정된 필드를 참조하는 외래키를 가지고 있어야 함. 
  • 기본키 필드와 외래키 필드
    • 데이터의 형식은 같거나 호환되어야 함.
    • 같은 종류의 정보가 들어 있어야 함.

 

② 일대일(1:1)

  • 일대일 관계에서 원본 테이블의 한 레코드는 참조 테이블의 한 레코드에만 대응되어야 함.
    • 참조 테이블의 한 레코드도 원본 테이블의 한 레코드에만 대응됨.
  • 이 관계는 대부분 한 테이블로 만들 수 있기 때문에 자주 사용되지 않음.

 

③ 다대다(M:N)

  • 원본 테이블의 한 레코드는 참조 테이블의 여러 레코드와 대응되며, 참조 테이블의 한 레코드도 원본 테이블의 여러 레코드와 대응됨.
    • 그러나 관계형 데이터베이스에서 이와 같이 설정하는 것은 큰 의미가 없음.
      • 참조 무결성이 유지되는 관계로 설정하기 위해서는 참조 레코드가 기본키나 인덱스(중복 부라능)로 설정되어 있어야 하는데, 기본키나 인덱스(중복 불가능)로 설정된 필드에는 동일한 값이 입력될 수 없기 때문
    • 그러므로 다대다의 관계는 원본 테이블 참조 테이블기본키외래키로 구성된 제3의 테이블을 정의해서 설정해야 함.
  • 다대다 관계는 제3의 테이블에 연결된 2개일대다 관계로 이루어짐.

 

참조 무결성

  • 테이블에 레코드를 입력하거나 삭제할 때 테이블 간에 정의된 관계를 유지하기 위해 따르는 규칙
  • 참조 무결성을 강화하기 위해 관계를 설정하려는 두 테이블의 관련 필드는 기본키이거나 고유한 인덱스 속성(중복 불가능)을 가져야 하며, 두 필드의 데이터 형식 또한 동일해야 함.

 

참고

  • 관계를 설정하는 것은 관계형 데이터베이스 구축의 가장 기본적인 작업으로, 출제율이 높으면서도 설정하는 방법이 쉬워 점수를 취득하기 쉬운 부분임.
  • "일련 번호" 형식은 레코드가 추가될 때 필드의 값이 자동으로 증가하거나 임의의 값이 입력되도록만 설정할 수 있음.
    • 원본 테이블의 데이터 값과 같아야 하는 참조 테이블의 데이터 형식으로 사용할 수 없음.
      • 참조 테이블의 참조 필드는 일련 번호와 호환되는 "숫자"로 지정해야 함.
728x90
그리드형(광고전용)
⚠️AdBlock이 감지되었습니다. 원할한 페이지 표시를 위해 AdBlock을 꺼주세요.⚠️
starrykss
starrykss
별의 공부 블로그 🧑🏻‍💻


📖 Contents 📖