Access 쿼리 및 양식에서 데이터를 업데이트할 때 발생할 수 있는 오류를 해결하는 방법

원본 KB 번호: 328828

참고

기본 매크로, 코딩 및 상호 운용성 기술이 필요합니다. 이 문서는 Microsoft Access 데이터베이스(.mdb 및 .accdb) 및 Microsoft Access 프로젝트(.adp)에 적용됩니다.

이 문서에서는 쿼리 및 양식에서 데이터를 업데이트할 때 Microsoft Access에서 발생할 수 있는 오류를 설명합니다. 이 문서에서는 오류의 원인과 이러한 오류를 해결하는 방법에 대해서도 설명합니다.

쿼리 또는 양식에서 데이터를 업데이트하려고 하면 다음 오류 메시지 중 하나가 나타날 수 있습니다.

이 작업에서는 업데이트할 수 있는 쿼리를 사용해야 합니다.

-또는-

이 Recordset은 업데이트할 수 없습니다.

쿼리에서 데이터를 업데이트할 때 발생할 수 있는 문제에 대한 문제 해결 정보

  • 쿼리가 세 개 이상의 테이블을 기반으로 하고 다대일 대 다 관계가 있는 경우 쿼리에서 직접 데이터를 업데이트할 수 없습니다. 양식 또는 데이터 액세스 페이지에서 데이터를 업데이트할 수 있습니다. 양식의 속성이 Dynaset(일관성 없는 업데이트)으로 설정된 경우 RecordsetType 쿼리에 따라 이 작업을 수행할 수 있습니다.

  • 쿼리가 크로스탭 쿼리인 경우 쿼리의 데이터를 업데이트할 수 없습니다.

  • 쿼리가 Microsoft SQL 통과 쿼리인 경우 쿼리의 데이터를 업데이트할 수 없습니다.

  • 쿼리가 필드의 값에 대한 합계, 평균, 개수 또는 기타 유형의 합계를 계산하는 경우 쿼리의 데이터를 업데이트할 수 없습니다. 또한 크로스탭, 쿼리, 선택 쿼리 또는 합계 또는 집계 함수가 포함된 하위 쿼리에서 업데이트 대상 행의 필드를 참조하는 쿼리를 업데이트할 수 없습니다. 이 문제를 해결하려면 업데이트 쿼리의 업데이트 할 행에서 Domain Aggregate 함수를 사용합니다. 크로스탭 쿼리, 선택 쿼리 또는 합계 또는 집계 함수를 포함하는 하위 쿼리에서 필드를 참조할 수 있습니다.

  • 쿼리가 공용 구조체 쿼리인 경우 쿼리에서 데이터를 업데이트할 수 없습니다.

  • 쿼리의 Unique Values 속성이 예로 설정된 경우 쿼리의 데이터를 업데이트할 수 없습니다. 이 문제를 해결하려면 쿼리의 Unique Values 속성을 아니요로 설정합니다.

  • 쿼리에 고유 인덱스가 없는 연결된 ODBC 테이블이나 기본 키가 없는 Paradox 테이블이 포함된 경우 쿼리에서 데이터를 업데이트할 수 없습니다. 이 문제를 해결하려면 연결된 테이블에 기본 키 또는 고유 인덱스 를 추가합니다.

  • 쿼리 또는 기본 테이블에 대한 데이터 업데이트 권한이 없는 경우 데이터를 업데이트할 수 없습니다. 이 문제를 resolve 데이터를 업데이트할 수 있는 권한을 할당합니다.

  • 쿼리에 둘 이상의 테이블 또는 쿼리가 포함되어 있고 테이블 또는 쿼리가 디자인 보기의 조인 줄에 의해 조인되지 않는 경우 쿼리의 데이터를 업데이트할 수 없습니다. 이 문제를 resolve 위해 테이블을 업데이트할 수 있도록 테이블을 올바르게 조인해야 합니다.

  • 업데이트하려는 필드가 계산 필드인 경우 쿼리에서 데이터를 업데이트할 수 없습니다.

  • 업데이트하려는 필드가 읽기 전용이거나, 데이터베이스가 읽기 전용으로 열려 있거나, 데이터베이스가 읽기 전용 드라이브에 있는 경우 쿼리에서 데이터를 업데이트할 수 없습니다. 이 문제를 방지하려면 데이터베이스를 읽기 전용으로 열지 마세요. 데이터베이스가 읽기 전용인 드라이브에 있는 경우 드라이브에서 읽기 전용 특성을 제거하거나 데이터베이스를 읽기 전용이 아닌 드라이브로 이동합니다.

  • 업데이트하려는 레코드의 필드가 삭제되거나 다른 사용자가 잠기면 쿼리에서 데이터를 업데이트할 수 없습니다. 레코드가 잠금 해제되는 즉시 잠긴 레코드를 업데이트할 수 있습니다.

  • 쿼리가 일대다 관계가 있는 테이블을 기반으로 하는 경우 수정할 수 없는 필드 유형은 다음과 같습니다.

    • "일" 쪽에서 필드를 조인합니다.
    • 데이터시트에 "다" 측면 조인 필드가 표시되지 않습니다.
    • "일" 쪽에서 데이터를 업데이트한 후 "다" 쪽에서 필드를 조인합니다.
    • 외부 조인과 일대다 관계의 "일" 쪽에 있는 테이블의 빈 필드가 있습니다.
    • ODBC 테이블의 전체 고유 키는 출력이 아닙니다.

    다음 목록에서 올바른 작업을 수행하는 경우 이러한 문제 중 하나를 resolve 수 있습니다.

    • 두 테이블 간에 연속 업데이트를 사용하도록 설정합니다.
    • 새 레코드를 추가할 수 있도록 "다" 쪽의 조인 필드를 쿼리에 추가합니다.
    • 레코드를 저장합니다. "다" 측면 조인 필드를 변경할 수 있습니다.
    • "다" 쪽 테이블의 필드에 값을 입력합니다. "일" 쪽의 조인된 필드에 해당 레코드에 대한 값이 포함된 경우에만 이 작업을 수행할 수 있습니다.
    • ODBC 테이블의 모든 기본 키 필드를 선택하여 삽입을 허용합니다.

양식에서 데이터를 업데이트할 때 발생할 수 있는 문제에 대한 문제 해결 정보

  • 양식이 둘 이상의 테이블이 있는 저장 프로시저를 기반으로 하는 경우 양식에서 데이터를 업데이트할 수 없습니다.

  • 양식이 ADO(ActiveX Data Objects) 레코드 집합을 기반으로 하는 경우 양식에서 데이터를 업데이트할 수 없습니다. 액세스 양식을 사용하면 MSDataShape 및 SQL Server OLEDB 공급자의 조합을 사용하여 ADO 레코드 집합을 만든 경우 ADO 레코드 집합에서 데이터를 편집할 수 있습니다.