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ă.
Î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.
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.
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:
Î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.
Î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.
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.
Sugerați o caracteristică nouă
Ne place să vă citim sugestiile și feedbackul! Împărtășiți-vă gândurile. Vă ascultăm.