Vpišite se z Microsoftovim
Vpišite se ali ustvarite račun.
Pozdravljeni,
Izberite drug račun.
Imate več računov
Izberite račun, s katerim se želite vpisati.

Znaki

Ko poskušate vstaviti podatke v tabelo po meri ali ko zaženete postopek, ki vstavlja podatke v tabelo po meri, prejmete sporočilo o napaki, podobno tej:

Med dostopom do tabele TableName so se pojavile te napake sistema SQL Server:



1088, "42000",[Microsoft][GONILNIK ODBC SQL Server][SQL Server]Predmeta »NAVDBName.dbo ni mogoče najti.CompanyName$ TableName", ker ne obstaja ali pa nimate dovoljenj.



SQL: SET

IDENTITY_INSERT "NAVDBName"." dbo"." CompanyName$ TableName" ON

Opomba V tem primeru TableName predstavlja strankino tabelo Microsoft Dynamics NAV. NAVDBName predstavlja ime zbirke podatkov Microsoft Dynamics NAV stranke. CompanyName predstavlja določeno ime podjetja stranke v storitvi Microsoft Dynamics NAV.



Do te težave lahko pride v različicah storitve Microsoft Dynamics NAV, ki uporabljajo Microsoft SQL Server zbirke podatkov.

Razlog

Ta težava nastane, če so izpolnjeni ti pogoji:

  • V enem od polj v tabeli, ki je označena v sporočilu o napaki, je lastnost AutoIncrement nastavljena na Da.

  • Operacija INSERT, ki jo izrecno uporabite, zapolni polje, za katerega je lastnost AutoIncrement nastavljena na Da.

  • Nimate enega od teh dovoljenj:

    • Članstvo v vlogi strežnika SYSADMIN v SQL Server

    • Članstvo db_owner vlog zbirke podatkov za zbirko podatkov Microsoft Dynamics NAV

    • Članstvo db_ddladmin vlog zbirke podatkov za zbirko podatkov Microsoft Dynamics NAV

Rešitev

Če želite odpraviti to težavo, uporabite enega od teh načinov.

1. način


Izenačite operacijo INSERT, tako da ne dopolni polja z lastnostjo AutoIncrement nastavljeno na Da.

2. način

Nastavite lastnost AutoIncrement na Ne za ustrezno polje.

Opomba Tako 1. način kot tudi 2. način lahko zahtevata pomoč razvijalca storitve Microsoft Dynamics NAV, še posebej, če sprememba zahteva spremembo kode. Te spremembe je treba temeljito preskusiti, preden uporabite spremembe v živa zbirki podatkov Microsoft Dynamics NAV.

3. način

Za tabelo po meri dodelite dovoljenja »Spremeni« ustrezni vlogi programa (na primer »&ndo$shadow«, če ste izbrali standardni varnostni model) v SQL Server Management Studio.


Opomba Dovoljenja, ki so dodeljena ročno tabelam iz SQL Server Management Studio so prepisana, ko zaženete varnostno sinhronizacijo v storitvi Microsoft Dynamics NAV. Zato morate po zagonu varnostne sinhronizacije tabelo po meri znova dodeliti dovoljenje Spremeni.

Več informacij

Če je v storitvi Microsoft Dynamics NAV lastnost AutoIncrement nastavljena na Da za polje s podatkovno vrsto »Celo število« ali za polje podatkovnega tipa BigInteger, mora biti ustrezno polje samodejno izpolnjeno z enolično celoštevilsko vrednostjo, ki jo ustvari sistem. Vrednost, ki jo program uporabi za izračun polja, se zaporedno poveča za vsak nov zapis, ki je vstavljen.

Če želite uveljaviti lastnost AutoIncrement, Microsoft Dynamics NAV SQL Server stolpec, ki ima z njo povezano lastnost IDENTITY. Lastnost IDENTITY povzroči, SQL Server samodejno zapolni stolpec, kot je opisano zgoraj. Če je lastnost IDENTITY vklopljena za stolpec SQL Server, uporabniki ne morejo izrecno vstaviti ustreznega stolpca v izjavi INSERT, razen če imajo uporabniki enega od teh dovoljenj:

  • Članstvo v vlogi strežnika SYSADMIN v SQL Server

  • Članstvo db_owner vlog zbirke podatkov za zbirko podatkov Microsoft Dynamics NAV

  • Članstvo db_ddladmin vlog zbirke podatkov za zbirko podatkov Microsoft Dynamics NAV

Poleg tega, da imajo ta dovoljenja, morajo uporabniki zaključiti tudi ta ukaz, če želite dokončati postopek INSERT.

SET IDENTITY_INSERT <table_name> ONKo se pojavi sporočilo o napaki, omenjeno v razdelku »Znaki«, microsoft Dynamics NAV poskuša zagnati izjavo SET v SQL Server.

Metoda eksplicitno dolivanju stolpca z lastnostjo IDENTITY je metoda, ki običajno ni potrebna. Stolpci z lastnostjo IDENTITY so običajno samodejno izpolnjeni s SQL Server.

Ali potrebujete dodatno pomoč?

Ali želite več možnosti?

Raziščite ugodnosti naročnine, prebrskajte izobraževalne tečaje, preberite, kako zaščitite svojo napravo in še več.

Skupnosti vam pomagajo postaviti vprašanja in odgovoriti nanje, posredovati povratne informacije in prisluhniti strokovnjakom z bogatim znanjem.

Vam je bila informacija v pomoč?

Kako ste zadovoljni s kakovostjo jezika?
Kaj je vplivalo na vašo izkušnjo?
Če pritisnete »Pošlji«, bomo vaše povratne informacije uporabili za izboljšanje Microsoftovih izdelkov in storitev. Vaš skrbnik za IT bo lahko zbiral te podatke. Izjavi o zasebnosti.

Zahvaljujemo se vam za povratne informacije.

×