Posledná aktualizácia: 23. januára 2020
PROBLÉM
Keď vytvoríte prepojenie na tabuľku v SQL Serveri, ktorá obsahuje stĺpec identity, Access zvyčajne identifikuje daný stĺpec ako stĺpec automatického číslovania.
V rámci zostáv aktuálneho kanála (16.0.12325.*) verzie 1912 služieb Office 365 a balíka Office 2016/2019 nie sú stĺpce identity identifikované správne, a namiesto toho sa rozpoznávajú len ako číslo.
Stane sa to pri vytváraní nových prepojení prostredníctvom používateľského rozhrania alebo kódu, ale len v prípade nových prepojení. Na existujúce prepojenia to nebude mať vplyv, pokiaľ prepojenie nebude obnovené.
Program Access používa správnu identifikáciu stĺpca identity na mnohé účely, takže aplikácie to môže ovplyvniť viacerými spôsobmi.
Stĺpec identity sa napríklad zvyčajne používa na identifikáciu novo pridaného záznamu. Ak sa stĺpec identity nepoužíva, Access nemusí byť schopný správne vyhľadať novo pridaný riadok, čo bude mať za následok, že polia v tomto riadku sa zobrazia ako #Odstránené.
Podobné problémy sa môžu zobraziť pri používaní vlastnosti RecordSet.LastModified na načítanie hodnôt pre posledný pridaný záznam. Nasledujúci kód:
Set rst = CurrentDb().OpenRecordset("tblWithIdentityColumn")
rst.AddNew
rst!CompanyName = "Contoso"
rst.Update
rst.Bookmark = rst.LastModified
MsgBox rst!CompanyName
Môže mať za následok chybu 3167:
V obidvoch prípadoch bude záznam úspešne pridaný, ale Access ho nedokáže úspešne vyhľadať.
Access tiež zvyčajne ignoruje pokusy o priamu aktualizáciu stĺpca identity. V týchto zostavách však pokus umožňuje, ale nie je úspešný a generuje chybové hlásenie:
[SQL Server] Nie je možné vložiť explicitnú hodnotu pre stĺpec identity v tabuľke tblOrders, keď je funkcia IDENTITY_INSERT nastavená na možnosť OFF (Vyp.) (#544)
STAV: OPRAVENÉ
Oprava tohto problému je teraz k dispozícii vo verzii 1912. Ak chcete získať opravu, možno bude potrebné, aby ste explicitne vynútili aktualizáciu. Číslo opravenej zostavy by malo byť 12325.20344.
Ak ste v okruhu insiderov Slow (verzia 2001) alebo insiderov Fast (verzia 2002). Oprava ešte nie je súčasťou týchto kanálov, takže možno budete chcieť prejsť na aktuálny kanál.
Poznámka: Po zmene verzií je potrebné obnoviť všetky príslušné prepojenia, aby ste sa uistili, že znova fungujú správne.
Opýtajte sa odborníkov
Spojte sa s odborníkmi, diskutujte o novinkách, aktualizáciách a najvhodnejších postupoch a prečítajte si náš blog.
Získajte pomoc v komunite
Položte otázku zástupcom oddelenia podpory, odborníkom MVP, technikom a iným používateľom balíka Office a nájdite riešenia.
Navrhnite novú funkciu
Radi si prečítame vaše návrhy a pripomienky. Podeľte sa o svoje myšlienky. Váš názor nás zaujíma.
Pozrite tiež
Opravy alebo alternatívne riešenia nedávnych problémov v Accesse