26년 3차 상시03 액세스 문제1 DB구축 3번 관계 문제에서 면적정보 테이블의 데이터가 참조무결성 강화규칙에 어긋난다고 뜹니다. 유투브에 게시되어 있는 풀이도 보았으나 따로 건드린 건 없는 거 같은데 왜 이렇게 뜨는 지 모르겠습니다.

안녕하세요.
첨부해 주신 작업 파일을 기준으로 보면, 지금 메시지는 관계 설정 방법 자체의 문제가 아니라 현재 데이터에 참조 무결성을 만족하지 못하는 카페코드가 있다는 뜻입니다.
이 문제의 정상적인 관계는 보통 다음 구조입니다.
카페정보.카페코드 1 ───── ∞ 면적정보.카페코드
기준 테이블 관련 테이블즉 면적정보에 들어 있는 모든 카페코드는 반드시 카페정보에도 존재해야 합니다. 하나라도 다음과 같은 상태가 있으면 지금 오류가 발생합니다.
카페정보 면적정보
C001 C001
C002 C002
C003 ← 카페정보에 없음가장 빠르게 원인을 확인하는 방법은 불일치 검색 쿼리 마법사입니다.
만들기 → 쿼리 마법사 → 불일치 검색 쿼리 마법사에서
면적정보에 있으면서
카페정보에는 없는 레코드를 찾고, 두 테이블의 연결 필드는 카페코드로 지정하세요. 결과가 한 건이라도 나오면 그 레코드 때문에 참조 무결성 설정이 안 되는 것입니다.
직접 디자인 보기로 확인하려면 다음 구조로 만들어도 됩니다.
SELECT 면적정보.*
FROM 면적정보
LEFT JOIN 카페정보
ON 면적정보.카페코드 = 카페정보.카페코드
WHERE 카페정보.카페코드 Is Null;결과가 나온다면 그 카페코드가 고아 레코드입니다.
특히 연습 과정에서 업데이트·삭제·추가 쿼리를 한 번이라도 잘못 실행했다면, 쿼리를 나중에 수정하거나 삭제해도 이미 변경된 테이블 데이터는 원상복구되지 않습니다. 그래서 “테이블을 직접 건드린 기억이 없다” 하더라도 액션 쿼리 실행으로 데이터가 바뀌었을 수 있습니다.
따라서 이 파일에서 불일치 레코드가 확인된다면 가장 안전한 해결책은 임의로 데이터를 고치는 것이 아니라 배포받은 원본 26년상시03.accdb를 새로 복사해서 문제 1-3 관계 설정부터 다시 수행하는 것입니다. 새 원본에서도 동일한 오류가 난다면 그때는 배포 파일 자체의 데이터 이상 여부를 의심해야 합니다.
또 하나 확인할 것은 두 카페코드 필드의 데이터 형식과 필드 크기가 동일한지입니다. 둘 다 짧은 텍스트라면 필드 크기도 같아야 합니다.
즉 현재 오류는 단순히 관계선을 반대로 드래그해서 생기는 메시지라기보다, 면적정보 쪽 카페코드 중 카페정보에서 찾을 수 없는 값이 있거나 두 필드 정의가 맞지 않는 경우에 발생하는 오류입니다.
즐거운 하루 되세요.
-
관리자2026-10-02 09:34:06
안녕하세요.
첨부해 주신 작업 파일을 기준으로 보면, 지금 메시지는 관계 설정 방법 자체의 문제가 아니라 현재 데이터에 참조 무결성을 만족하지 못하는
카페코드가 있다는 뜻입니다.이 문제의 정상적인 관계는 보통 다음 구조입니다.
카페정보.카페코드 1 ───── ∞ 면적정보.카페코드 기준 테이블 관련 테이블즉
면적정보에 들어 있는 모든 카페코드는 반드시카페정보에도 존재해야 합니다. 하나라도 다음과 같은 상태가 있으면 지금 오류가 발생합니다.카페정보 면적정보 C001 C001 C002 C002 C003 ← 카페정보에 없음가장 빠르게 원인을 확인하는 방법은 불일치 검색 쿼리 마법사입니다.
만들기 → 쿼리 마법사 → 불일치 검색 쿼리 마법사에서면적정보에 있으면서 카페정보에는 없는 레코드를 찾고, 두 테이블의 연결 필드는
카페코드로 지정하세요. 결과가 한 건이라도 나오면 그 레코드 때문에 참조 무결성 설정이 안 되는 것입니다.직접 디자인 보기로 확인하려면 다음 구조로 만들어도 됩니다.
SELECT 면적정보.* FROM 면적정보 LEFT JOIN 카페정보 ON 면적정보.카페코드 = 카페정보.카페코드 WHERE 카페정보.카페코드 Is Null;결과가 나온다면 그 카페코드가 고아 레코드입니다.
특히 연습 과정에서 업데이트·삭제·추가 쿼리를 한 번이라도 잘못 실행했다면, 쿼리를 나중에 수정하거나 삭제해도 이미 변경된 테이블 데이터는 원상복구되지 않습니다. 그래서 “테이블을 직접 건드린 기억이 없다” 하더라도 액션 쿼리 실행으로 데이터가 바뀌었을 수 있습니다.
따라서 이 파일에서 불일치 레코드가 확인된다면 가장 안전한 해결책은 임의로 데이터를 고치는 것이 아니라 배포받은 원본
26년상시03.accdb를 새로 복사해서 문제 1-3 관계 설정부터 다시 수행하는 것입니다. 새 원본에서도 동일한 오류가 난다면 그때는 배포 파일 자체의 데이터 이상 여부를 의심해야 합니다.또 하나 확인할 것은 두
카페코드필드의 데이터 형식과 필드 크기가 동일한지입니다. 둘 다 짧은 텍스트라면 필드 크기도 같아야 합니다.즉 현재 오류는 단순히 관계선을 반대로 드래그해서 생기는 메시지라기보다,
면적정보쪽 카페코드 중카페정보에서 찾을 수 없는 값이 있거나 두 필드 정의가 맞지 않는 경우에 발생하는 오류입니다.즐거운 하루 되세요.