테이블 관계

테이블 관계는 데이터베이스에서 행을 서로 연결할 수 있는지를 정의합니다. 가장 간단한 수준에서 조회 열을 테이블에 추가하면 두 테이블 간에 새로운 1:N(일대다) 관계를 만들고 양식에 조회 열을 배치할 수 있습니다. 조회 열을 사용하면 사용자는 해당 테이블의 여러 하위 행을 단일 상위 테이블 행에 연결할 수 있습니다.

단순히 행을 다른 행에 연결할 수 있는 방법을 정의하는 것 외에 1:N 테이블 관계는 다음 질문에 대한 데이터도 제공합니다.

  • 행을 삭제할 때 해당 행과 관련된 다른 행도 삭제해야 합니까?
  • 행을 할당하면 해당 행과 관련된 모든 행을 새 담당자에게 할당해야 합니까?
  • 기존 행의 컨텍스트에서 관련 행을 새로 만들 때 데이터 입력 프로세스를 간소화하려면 어떻게 해야 합니까?
  • 행을 보는 사용자가 관련 행을 보려면 어떻게 해야 합니까?

테이블은 두 테이블에 대한 여러 행을 서로 연결할 수 있는 N:N(다대다) 관계에도 참여할 수 있습니다.

테이블 관계 또는 연결을 사용할지 여부 결정

테이블 관계는 데이터베이스를 변경하는 메타데이터입니다. 이러한 관계를 통해 쿼리는 관련 데이터를 효율적으로 검색할 수 있습니다. 테이블 관계를 사용하여 테이블을 정의하거나 대부분의 행을 사용할 수 있는 공식적인 관계를 정의합니다. 예를 들어, 잠재 고객이 없는 영업 기회는 유용하지 않습니다. 영업 기회 테이블에는 또한 경쟁 업체 테이블과 N:N 관계가 있습니다. 이를 통해 여러 경쟁 업체를 영업 기회에 추가할 수 있습니다. 이 데이터를 캡처하고 경쟁 업체를 보여 주는 보고서를 만들 수도 있습니다.

행 사이에 연결이라고 하는 덜 공식적인 종류의 관계가 있습니다. 예를 들어, 두 연락처가 결혼했는지, 직장 밖에서 친구인지, 또는 다른 거래처에 대해 작업하는 데 사용된 연락처인지 알면 유용할 수 있습니다. 대부분의 비즈니스는 이러한 종류의 정보를 사용하여 보고서를 생성하지 않거나 입력할 필요가 없으므로 테이블 관계를 만들 필요가 없습니다. 추가 정보: 연결 역할 구성

테이블 관계 유형

솔루션 탐색기에서 볼 때 테이블 관계 유형 세 가지를 생각할 수 있습니다. 실제로는 다음 표와 같이 두 개뿐입니다.

관계 유형 설명
1:N(일대다) 관련 테이블의 조회 열로 인해 기본 테이블에 대한 하나의 테이블 행이 다른 많은 관련 테이블 행에 연결될 수 있는 테이블 관계입니다.

기본 테이블 행을 볼 때 해당 레코드에 연결된 관련 테이블 행 목록을 볼 수 있습니다.

Power Apps 포털에서 현재 테이블은 기본 테이블을 나타냅니다.
N:N(다대다) 특별한 관계 테이블에 종속되는 테이블 관계를 교차 테이블이라고 하는데, 하나의 여러 행을 다른 테이블의 많은 행에 연결할 수 있습니다.

N:N 관계에서 두 테이블 행을 볼 때 관련된 다른 테이블의 행 목록을 볼 수 있습니다.

디자이너에서 테이블별로 그룹화된 보기를 표시하므로 N:1(다대일) 관계 유형은 사용자 인터페이스에 있습니다. 1:N 관계는 실제로 테이블 사이에 존재하고 각 테이블을 기본/현재 테이블 또는 관련 테이블로 참조합니다. 관련 테이블(하위 테이블이라고도 함)에는 기본 테이블(상위 테이블이라고도 함)의 행에 참조를 저장할 수 있는 조회 열이 있습니다. N:1 관계는 관련 테이블의 관점에서 보면 1:N 관계입니다.

테이블 관계 동작

관련 테이블 동작은 데이터 무결성을 보장하고 회사의 비즈니스 프로세스를 자동화할 수 있도록 하기 때문에 중요합니다.

데이터 무결성 유지

일부 테이블은 다른 테이블을 지원하기 위해 존재합니다. 자체로는 의미가 없습니다. 일반적으로 지원되는 기본 테이블에 연결하는 데 필요한 조회 열이 있습니다. 기본 행을 삭제할 때 어떻게 해야 합니까?

관계 동작을 사용하여 비즈니스 규칙에 따라 관련 행에 발생하는 작업을 정의할 수 있습니다. 추가 정보: 고급 관계 동작 추가

비즈니스 프로세스 자동화

새로운 영업 직원이 있고 현재 다른 영업 직원에게 할당된 기존 거래처 중 일부를 할당하려고 합니다. 각 거래처 행에는 연결된 작업 활동이 많이 있습니다. 다시 할당하려는 활성 거래처를 쉽게 찾아 새로운 영업 직원에게 할당할 수 있습니다. 그러나 거래처와 관련된 작업 활동에 무엇을 수행해야 할까요? 각 작업을 열고 새로운 판매 직원에게 할당할지 여부를 결정하시겠습니까? 아마도 힘들겠죠? 대신 관계에 일부 표준 규칙을 자동으로 적용하도록 할 수 있습니다. 이러한 규칙은 다시 할당할 거래처와 연관된 작업 행에만 적용됩니다. 옵션은 다음과 같습니다.

  • 모든 활성 작업을 다시 할당합니다.
  • 모든 작업을 다시 할당합니다.
  • 작업을 다시 할당하지 않습니다.
  • 거래처의 이전 담당자에게 현재 할당된 모든 작업을 다시 할당합니다.

관계는 기본 테이블 행에 대해 행에서 수행되는 작업이 관련 테이블 행으로 아래로 연속 변경되는 방법을 제어할 수 있습니다.

동작

특정 동작이 발생할 때 적용할 수 있는 여러 종류의 동작이 있습니다.

동작 설명
활성 항목 연속 변경 모든 활성 관련 테이블 행에 대해 작업을 수행합니다.
모두 연속 변경 모든 관련 테이블 행에 대해 작업을 수행합니다.
연속 변경 없음 아무 작업도 수행하지 않습니다.
연결 제거 모든 관련 행의 조회 값을 제거합니다.
제한 관련 행이 있을 때 기본 테이블 행이 삭제되지 않도록 합니다.
담당 항목 연속 변경 기본 테이블 행과 동일한 사용자가 담당하는 모든 관련 테이블 행에 대해 작업을 수행합니다.

동작

다음은 특정 동작을 트리거할 수 있는 작업입니다.

Column 설명 옵션
할당 기본 테이블 행이 다른 사람에게 할당될 때 어떻게 해야 합니까? 모두 계단식 배열
활성 항목 계단식 배열
담당 항목 연속 변경
연속 변경 없음
상위 항목 재지정 상위/하위 관계의 관련 테이블에 대한 상위/하위 유형 관계에 대한 조회 값이 변경될 때 어떻게 해야 합니까?
추가 정보: 상위/하위 테이블 관계
모두 계단식 배열
활성 항목 계단식 배열
담당 항목 연속 변경
계단식 배열 없음
공유 기본 테이블 행을 공유할 때 어떻게 해야 합니까? 모두 계단식 배열
활성 항목 계단식 배열
담당 항목 연속 변경
계단식 배열 없음
삭제 기본 테이블 행을 삭제할 때 어떻게 해야 합니까? 모두 계단식 배열
링크 제거
제한
공유 해제 기본 테이블 행을 공유 취소할 때 어떻게 해야 합니까? 모두 계단식 배열
활성 항목 계단식 배열
담당 항목 연속 변경
계단식 배열 없음
병합 기본 테이블 행을 병합할 때 어떻게 해야 합니까? 모두 계단식 배열
계단식 배열 없음
롤업 보기 이 관계와 관련된 롤업 보기의 원하는 동작은 무엇입니까? 모두 연속 변경
활성 항목 연속 변경
담당 항목 연속 변경
연속 변경 없음

참고

다음과 같은 상황에서는 할당, 삭제, 병합 및 상위 항목 재지정 작업이 실행되지 않습니다.

  • 원래 상위 행과 요청된 작업에 동일한 값이 포함된 경우. 예 : 할당 트리거를 시도하고 이미 행의 담당자인 연락처 선택
  • 이미 계단식 작업을 실행 중인 상위 행에 대한 작업 수행 시도

참고

할당을 실행할 때 현재 행에서 활성화된 모든 워크플로 또는 비즈니스 규칙은 재할당이 발생하면 자동으로 비활성화됩니다. 행의 새 담당자가 계속 사용하려는 경우 워크플로 또는 비즈니스 규칙을 다시 활성화해야 합니다.

상위/하위 테이블 관계

1:N 관계를 가질 수 있는 테이블의 각 쌍에는 테이블 간 1:N 관계를 여러 개 가질 수 있습니다. 하지만 일반적으로 아직 이러한 관계 중 하나만 상위/하위 테이블 관계로 간주할 수 있습니다.

상위/하위 테이블 관계는 다음 표에서 상위/하위 열의 연속 변경 옵션 중 하나가 true이면 1:N 테이블 관계입니다.

작업 상위/하위 상위/하위 아님
할당 모두 연속 변경
담당 항목 연속 변경
활성 항목 연속 변경
연속 변경 없음
삭제 모두 연속 변경 RemoveLink
제한
상위 항목 재지정 모두 연속 변경
담당 항목 연속 변경
활성 항목 연속 변경
연속 변경 없음
공유 모두 연속 변경
담당 항목 연속 변경
활성 항목 연속 변경
연속 변경 없음
공유 해제 모두 연속 변경
담당 항목 연속 변경
활성 항목 계단식 배열
계단식 배열 없음

예를 들어 새 사용자 지정 테이블을 만들고 1:N 테이블 관계를 사용자 지정 테이블이 관련 테이블인 거래처 테이블에 연결하면 상위/하위 열에서 옵션을 사용하도록 해당 테이블 관계에 대한 작업을 구성할 수 있습니다. 나중에 다른 1:N 테이블 관계를 참조하는 테이블로 사용자 지정 테이블에 추가하면 상위/하위 아님 열의 옵션을 사용하는 작업을 구성할 수 있습니다.

일반적으로 각 테이블 쌍에 대해 상위/하위 관계는 하나씩만 있습니다. 관련된 테이블의 조회에 둘 이상의 테이블 유형에 대한 관계가 허용될 수도 있습니다.

예를 들어 테이블에 연락처 또는 거래처 테이블을 참조할 수 있는 고객 조회가 있는 경우입니다. 두 가지 별도의 상위/하위 1:N 테이블 관계가 있습니다.

모든 활동 테이블에는 관련 조회 열을 사용하여 연결할 수 있는 테이블에 대해 유사한 상위/하위 테이블 관계 집합이 있습니다.

설정할 수 있는 동작에 대한 제한

상위/하위 관계로 인해 테이블 관계를 정의할 때 유의해야 할 몇 가지 제한이 있습니다.

  • 사용자 지정 테이블은 연속되는 관련 시스템 테이블과의 관계에서 기본 테이블이 될 수 없습니다. 다시 말해, 기본 사용자 지정 테이블과 관련 시스템 테이블 간에 모두 연속 변경, 활성 항목 연속 변경 또는 담당 항목 연속 변경으로 설정된 작업이 있는 관계를 만들 수 없습니다.
  • 새 관계의 관련 테이블이 이미 모두 연속 변경, 활성 항목 연속 변경 또는 담당 항목 연속 변경으로 설정된 작업이 있는 다른 관계의 관련 테이블로 구성되어 있으면 새 관계의 작업을 모두 연속 변경, 활성 항목 연속 변경 또는 담당 항목 연속 변경으로 설정할 수 없습니다. 이는 관계에 여러 상위 관계를 만들지 못하도록 하기 위해서입니다.

상속된 액세스 권한 정리

상위 항목 재지정공유 계단식 동작을 사용하면 관련 테이블의 행에 대한 액세스를 제공하려는 경우 유용합니다. 하지만 프로세스 또는 디자인 변경에 따라 연속 변경 동작 설정을 변경해야 할 수도 있습니다.

테이블 관계가 상위 항목 재지정 또는 공유를 사용하고 계단식 동작이 계단식 없음으로 변경되면 테이블 관계는 새로운 권한 변경이 관련 하위 테이블로 계단식으로 연결되는 것을 방지합니다. 추가로 연속 변경 동작이 활성 상태였던 동안 부여되었던 상속된 권한은 취소되어야 합니다.

상속된 액세스 권한 정리는 계단식 동작이 계단식 없음으로 변경된 후 남아 있는 레거시 상속된 액세스 권한을 정리하는 시스템 작업입니다. 이 정리는 테이블에 대한 액세스 권한이 직접 부여된 사용자에게 영향을 주지 않지만 상속을 통해서만 액세스 권한을 받은 모든 사용자의 액세스 권한을 제거합니다.

상속된 액세스 권한 정리의 작동 방식은 다음과 같습니다.

  1. 업데이트된 상위와 계단식 관계에 있던 모든 테이블을 식별하고 수집합니다.
  2. 상속된 액세스를 통해 관련 테이블에 대한 액세스 권한이 부여된 사용자를 식별하고 수집합니다.
  3. 관련 테이블에 대한 직접 액세스 권한이 부여된 사용자를 확인하고 컬렉션에서 제거합니다.
  4. 수집된 테이블에서 수집된 사용자의 상속된 액세스를 제거합니다.

정리가 실행된 후 계단식 기능 때문에 관련 테이블에 액세스 할 수 있었던 사용자는 더 이상 행에 액세스할 수 없으므로 보안이 강화됩니다. 정리가 실패하는 경우가 있습니다. 상속된 액세스 권한을 정리하는 방법 자세히 알아보기

참조 항목

시스템 작업 모니터링
1:N(일대다) 또는 N:1(다대일) 관계 만들기 및 편집
N:N 테이블 관계 만들기

참고

귀사의 설명서 언어 기본 설정에 대해 말씀해 주시겠습니까? 간단한 설문 조사에 응해주세요. (이 설문 조사는 영어로 되어 있습니다.)

이 설문 조사는 약 7분 정도 걸립니다. 개인 데이터는 수집되지 않습니다(개인정보처리방침).