Access nu recunoaște coloana Identitate dintr-un tabel SQL Server legat

Se aplică la
Access pentru Microsoft 365 Access 2021 Access 2019 Access 2016

Ultima actualizare: 23 ianuarie 2020

PROBLEMĂ

Când creați o legătură la un tabel din SQL Server care are o coloană Identitate, Access va identifica în mod normal acea coloană drept coloană Numerotare automată.

Afișați că Coloana Identitate este identificată drept câmp Numerotare automată

În compilările canalului Curente (16.0.12325.*) ale versiunii 1912 de Office 365 și Office 2016/2019, coloanele identitate nu sunt identificate corect și vor fi recunoscute în schimb doar ca număr.

Identity Column not correctly identified as AutoNumber

Acest lucru se va întâmpla atunci când creați linkuri noi prin interfața de utilizator sau prin cod, dar numai pentru linkurile noi.  Linkurile existente nu vor fi afectate decât dacă linkul este reîmprospătat.

Access utilizează identificarea corespunzătoare a unei coloane Identitate în mai multe scopuri, astfel încât acest lucru poate afecta aplicațiile în mai multe moduri.

De exemplu, o coloană identitate este utilizată în mod normal pentru a identifica o înregistrare adăugată recent.  Atunci când nu este utilizată coloana Identitate, este posibil ca Access să nu poată găsi corect rândul nou adăugat, ceea ce va determina afișarea câmpurilor din rândul respectiv ca #Deleted.

Rând afișând câmpurile care spun Șters

Puteți vedea probleme similare atunci când utilizați proprietatea RecordSet.LastModified pentru a regăsi valorile pentru ultima înregistrare adăugată. Următorul cod:


Set rst = CurrentDb().OpenRecordset("tblWithIdentityColumn")

rst.AddNew
rst!CompanyName = "Contoso"
rst.Update

rst.Bookmark = rst.LastModified
MsgBox rst!CompanyName

Eroarea 3167 poate avea ca rezultat:

Eroare care indică faptul că înregistrarea este ștearsă.

În ambele cazuri, înregistrarea va fi adăugată cu succes, dar Access nu va reuși să o găsească.

De asemenea, Access va ignora în mod normal încercările de a actualiza direct coloana Identitate. Cu toate acestea, în aceste compilări, permite încercarea, dar nu reușește și generează un mesaj de eroare:

[SQL Server] Nu se poate insera valoarea explicită pentru coloana identitate din tabelul "tblComenzi" atunci când IDENTITY_INSERT este setată la DEZACTIVAT.(#544)

STARE: REMEDIAT

Remedierea pentru această problemă este acum disponibilă pentru versiunea 1912.  Poate fi necesar să impuneți în mod explicit o actualizare pentru a primi remedierea.  Numărul de compilare fix ar trebui să fie 12325.20344.

Dacă utilizați utilizatorii Insider lent (versiunea 2001) sau Insiders rapid (versiunea 2002). Remedierea nu a fost livrată încă în canalele respective, așa că vă recomandăm să treceți la Canalul Curente.

Notă

După ce modificați versiunile, trebuie să reîmprospătați toate linkurile afectate pentru a vă asigura că se comportă corect din nou.

Pictograma Experți (creier, rotițe dințate) Întrebați experții

Luați legătura cu experți, discutați despre cele mai recente știri, actualizări și cele mai bune practici și citiți blogul nostru.

Microsoft Tech Community

Pictograma Comunitate Obțineți ajutor de la Comunitate

Adresați o întrebare și găsiți soluții de la agenți de suport, specialiști MVP, ingineri și alți utilizatori Office.

Forumul Office pe Answers

Pictograma Solicitare caracteristică (bec, idee) Sugerați o caracteristică nouă

Ne place să vă citim sugestiile și feedbackul! Împărtășiți-vă gândurile. Vă ascultăm.

Oferiți feedback

Consultați și

Remedieri sau soluții pentru problemele recente din Access