책 내용 질문하기
추가쿼리실행오류
도서
[2015] 컴퓨터활용능력 1급 실기
페이지
202
조회수
75
작성일
2015-02-17
작성자
탈퇴*원
첨부파일

추가쿼리를 실행하면 이미지처럼 microsoft office access에서 추가쿼리에 레코드를 모두 추가할 수 없습니다.

microsoft office access 에서 형식 변환 오류 때문에 0필드를 null로 설정하고 키 위반 때문에 1레코드를 잠금 위반 때문에 0레코드를 유효성 검사 규칙 위반 때문에 0레코드를 추가하지 않았습니다.

실행쿼리를 실행하시겠습니까? 라는 오류가 뜨는데요..

해당 테이블에 기본키로 설정되어 있는 필드도 없고 인덱스가 중복 불가능으로 설정된 필드도 없는데

이런 오류가 뜨는 이유를 정말 모르겠네요

그냥 오류가 떠도 정답으로 인정된다는 답변 말고 이런 오류가 뜨는 이유를 상세하게 설명 부탁 드립니다.

그리고 또 한가지 질문은

특정 컨트롤에 비워있는 경우라는 조건에서

어떤 경우에는 if txt컨트롤명="" then 이라고 쓰고

어떤 경우는 if isnull(컨트롤명) then 이라고 쓰는데

"" 과 isnull 의 차이에 대해서도 정확한 설명 부탁드립니다.

답변
2015-02-24 01:18:53

질문 주신 오류는 각 필드간의 필드형식이 같지 않기 때문에 나타나는 오류이므로

필드 설정 하실때 빠트린 부분이 없는지 쿼리를 만들때 형식을 잘못 사용한 것은 아닌지 확인 해 보셔야 합니다.

그림만 가지고는 확인이 불가능 하므로 정확한 답변은 어렵습니다.

액세스는 txt이름을 참조했을 때는 단순한 컨트롤이 아니라 바운드된 필드를 찾게 됩니다.

그래서 필드의 초기값은 Null이므로 값을 입력하지 않은 것은 IsNull로 검사하는게 맞습니다.

엑셀에서는 컨트롤에 등록된 내용을 바로 확인 하기 때문에 cmb제품명 = "" 와 같이 사용하는 것입니다.

lst 박스부분에서는 바운드된 값을 이용하기때문에 isnull을 사용하는 경우가 많구요.

어떻게 작성하시든 코드가 정상실행되어 정확한 결과가 나온다면 상관 없습니다.

좋은 하루 되세요.

"
  • *
    2015-02-24 01:18:53

    질문 주신 오류는 각 필드간의 필드형식이 같지 않기 때문에 나타나는 오류이므로

    필드 설정 하실때 빠트린 부분이 없는지 쿼리를 만들때 형식을 잘못 사용한 것은 아닌지 확인 해 보셔야 합니다.

    그림만 가지고는 확인이 불가능 하므로 정확한 답변은 어렵습니다.

    액세스는 txt이름을 참조했을 때는 단순한 컨트롤이 아니라 바운드된 필드를 찾게 됩니다.

    그래서 필드의 초기값은 Null이므로 값을 입력하지 않은 것은 IsNull로 검사하는게 맞습니다.

    엑셀에서는 컨트롤에 등록된 내용을 바로 확인 하기 때문에 cmb제품명 = "" 와 같이 사용하는 것입니다.

    lst 박스부분에서는 바운드된 값을 이용하기때문에 isnull을 사용하는 경우가 많구요.

    어떻게 작성하시든 코드가 정상실행되어 정확한 결과가 나온다면 상관 없습니다.

    좋은 하루 되세요.

    "
· 5MB 이하의 zip, 문서, 이미지 파일만 가능합니다.
· 폭언, 욕설, 비방 등은 관리자에 의해 경고없이 삭제됩니다.