2016-09-13 1 views
0

Access에 대한 제한된 지식으로도 매우 이상합니다. 배경 정보 : 저는 함께 일하는 사람들을 추적하는 데이터베이스를 만들고 있습니다. 사장님은 퇴장하는 사람들과 사람들을 대신하는 보고서를 원합니다. 그러나 정보에 가입하면 NULL 값을 표시하는 확인란이 표시됩니다. 나는 기본값을 NO로 설정했고, 내가 말할 수있는 것에서 트리플 상태 체크 박스를 설정하지 않았다. 나는 테이블과 쿼리를 가입하기 위해 필드 IDReplicate 및 교체 ID를 사용하고조인으로 액세스 쿼리가 null 값으로 체크 박스를 반환합니다.

Table

:

이것은 어떻게 보이는지 단지 샘플입니다. IDReplicate는 기본 키의 사본입니다.

SELECT tblExample.IDReplicate, tblExample.Arrival, tblExample.City, tblExample 다음 가입의 첫 번째 필드로 기본 키를 사용하면 형식이 일치를 교체 사람들에 대한 정보를 뽑아

내 쿼리를 생성 .package, tblExample.LName FROM tblExample;

내 쿼리는 사람들이 떠나는 사람들이 도착 조인 할 수있는 :

SELECT tblExample.LName, tblExample.Departure, tblExample.ReplacementID, qryReplacement * tblExample 왼쪽에서 qryReplacement ON tblExample.ReplacementID 가입하세요. = qryReplacement. [ID 반복]; 당신이이 상태를 원하는 세 가지 상태 확인란을 가질 수있다처럼

Resultant Query Datasheet

+0

더 기록에 가입하지 않은 존재하는 널 (null)이 조인 LEFT를 사용하고 있기 때문에? – Brad

+0

그런 식으로 보입니다. RIGHT JOIN을 사용하려고하면 결과가 반대이고 이름과 출발일을 잃게됩니다. 그것은 내 오류를 일으키는 JOIN 속성 나타납니다. 나는 내부 조인을 사용할 것입니다, 그러나 그때 나는 아직 대체물을 할당받은 사람들을 떠날 수 없습니다. JOIN을 사용하지 않고 동일한 결과를 얻는 다른 방법을 알고 있습니까? 다시 말해, 출발하는 각 개인을 보여주는 테이블 또는 쿼리를 작성하고, 같은 행의 정보로 대체 할 경우? – Kronos1A9

+0

Nz에서'qryReplacement.Package'를'Nz (qryReplacement.Package, false)'와 같이 감쌀 수 있습니다. 그런 다음 null 값으로 0으로 표시되어야합니다. 체크 박스 모양이 사라집니다. 그러나 그것은 '아마 괜찮아. 보고서를 실제 Report 개체로 만들면 다시 가져올 수 있습니다 (쿼리에 바인딩 된 폼에서도 동일하게 수행 할 수 있음). – Brad

답변

0

그것은 소리, SO 자세한 내용은 게시이를 확인 :

Determine whether a Access checkbox is checked or not

IMO, 체크 박스가 문제를 피하고 최선을 피하십시오. 내 충고는 입력을 yes 또는 no로 제한하는 제약 조건이있는 텍스트 필드로 필드를 변경하는 것입니다. 기본값은 no입니다. 이렇게하면 Access에서 계산하여 인터페이스 요소를 데이터로 변환하는 대신 실제로 어떤 데이터가 테이블에 있는지 정확히 알 수 있습니다. 당신은 Access 테이블 디자인 인터페이스에서 할 경우는 다음과 같이 보일 것이다 :

enter image description here

+0

좋은 조언, 감사합니다. 나는이 문제를 모두 피하기위한 옵션으로 예 또는 아니오로 드롭 다운 상자를 사용할 수 있습니다.이것에 대한 이상한 부분은 쿼리에 두 개의 다른 예/아니오 확인란이 있으며 동일한 오류가 발생하지 않는다는 것입니다. 또한 JOIN 이전의 SponsorPackage 필드에는 null 값이 표시되지 않으며 true/false 만 표시됩니다. 나는 심지어 그것의 기본값을 NO로 만들었다. 내일 시간이되면 코드를 게시 할 것입니다. 어쩌면 내가 놓치고있는 뭔가가 그 원인이 될 수 있습니다. – Kronos1A9

+0

필자는 필자의 예를 들어, 확인란 대신 텍스트 필드에서 예 또는 아니오를 사용하여 조언을 시도했다. 나는 임의로 테이블을 Yes와 No로 채웠다. 질의를 실행 한 후에 No는 모두 null 인 것처럼 사라졌다. 문제가 체크 박스가 아닌 것으로 생각하기 시작했습니다. – Kronos1A9

+0

@ Kronos1A9 예, 텍스트 필드가 null로 돌아 오는 경우 다른 작업이 진행 중입니다. 확인해야 할 것은 데이터 처리 또는 null 인 다른 변수를 사용하는 계산입니다. null을 포함하는 계산은 공백 값에서 예상하는 동작 대신 null을 반환 할 수 있습니다. – Rominus

관련 문제