마지막 업데이트: 2020년 1월 23일
문제
ID 열이 있는 SQL Server의 테이블에 대한 링크를 만들 때 일반적으로 Access는 해당 열을 일련 번호 열로 식별합니다.
Office 365 및 Office 2016/2019 버전 1912의 현재 채널 빌드(16.0.12325. *)에서 ID 열이 올바르게 식별되지 않으며 대신 숫자로만 인식됩니다.
이것은 사용자 인터페이스 또는 코드를 통해 새 링크를 만들 때 발생하지만, 새 링크에 대해서만 발생합니다. 링크를 새로 고치지 않는 한 기존 링크는 영향을 받지 않습니다.
Access는 다양한 목적으로 ID 열의 올바른 ID를 사용하므로, 이는 여러가지 방식으로 응용 프로그램에 영향을 줄 수 있습니다.
예를 들어, ID 열은 일반적으로 새로 추가된 레코드를 식별하는 데 사용됩니다. ID 열을 사용하지 않으면 Access에서 새로 추가된 행을 올바르게 찾지 못해 해당 행의 필드가 #Deleted로 표시될 수 있습니다.
RecordSet.LastModified 속성을 사용하여 마지막으로 추가한 레코드의 값을 검색할 때 비슷한 문제가 발생할 수 있습니다. 다음 코드에서
Set rst = CurrentDb().OpenRecordset("tblWithIdentityColumn")
rst.AddNew
rst!CompanyName = "Contoso"
rst.Update
rst.Bookmark = rst.LastModified
MsgBox rst!CompanyName
3167 오류가 발생할 수 있습니다.
두 경우 모두 레코드가 성공적으로 추가되지만 Access에서 레코드를 찾지 못합니다.
또한 액세스는 일반적으로 ID 열을 직접 업데이트하려는 시도를 무시합니다. 한편, 이러한 빌드에서는 시도를 허용하지만 실패하고 오류 메시지를 생성합니다.
[SQL Server] IDENTITY_INSERT가 OFF로 설정되어 있으면 테이블 'tblOrders'의 ID 열에 명시적 값을 삽입할 수 없습니다. (#544)
상태: 해결됨
이 문제에 대한 수정 사항은 이제 버전 1912에서 사용할 수 있습니다. 수정 사항을 받도록 명시적으로 업데이트를 강제해야 할 수 있습니다. 고정된 빌드 번호는 12325.20344이어야 합니다.
이후 참가자(버전 2001) 또는 초기 참가자(버전 2002)인지. 해당 채널에서 아직 픽스가 제공되지 않았으므로 현재 채널로 이동하는 것이 좋습니다.
참고
버전을 변경한 후에는 영향받는 링크를 새로 고쳐서 제대로 작동하는지 확인해야 합니다.