Fix: Det går inte att infoga ett uttryckligt värde för identitetskolumnen i tabellen när IDENTITY_INSERT är inställt på OFF



Uppdaterad april 2024: Sluta få felmeddelanden och sakta ner ditt system med vårt optimeringsverktyg. Hämta den nu på denna länk
  1. Ladda ned och installera reparationsverktyget här.
  2. Låt den skanna din dator.
  3. Verktyget kommer då reparera din dator.

När du försöker infoga i en tabell med en identitetskolumn kan du få ett felmeddelande som anger att ett uttryckligt värde inte kan infogas för en identitetskolumn i tabellen "Tabell" när IDENTITY_INSERT är AV. ”Det här är inte slutet på världen och det är faktiskt ganska lätt att komma runt.

Orsaken till detta fel är när du försöker berätta för SQL Server vad identifieringsvärdet för en rad i en tabell ska vara. Om din tabell har en ID-kolumn vill SQL Server automatiskt generera det ID-värdet åt dig. Felet är i grund och botten ”Hej, jag måste skapa ett ID för dig ... säg inte vad det är!”

Endast en tabell i en session kan ha IDENTITY_INSERT PÅ vid varje given tidpunkt. Om den här egenskapen redan är aktiverad för en tabell och SET IDENTITY_INSERT ON är utfärdas för ett annat bord, SQL Server returnerar ett felmeddelande som anger att SET IDENTITY_INSERT redan är aktiverat och rapporterar tabellen inställd till PÅ.

Om det infogade värdet är större än det aktuella identifieringsvärdet för tabellen, SQL Server använder automatiskt det nyligen infogade värdet som det aktuella identifieringsvärdet.

SET IDENTITY_INSERT anges vid körning eller vid körning, inte under skanning.

Skapa databaser och tabeller

Skapa först en namngiven databas.
Skapa en tabell med namnet "Person" med följande kod. Tabell skapad med ”PRIMÄR NYCKELIDENTITET”

Syntax för att ställa in ”identity_insert off | självklart"

“Ställ av identitetsinsättning | on ”hjälper oss att åtgärda detta fel. Den korrekta syntaxen för detta uttalande är som följer.



Uppdatering april 2024:

Du kan nu förhindra PC -problem genom att använda det här verktyget, till exempel att skydda dig mot filförlust och skadlig kod. Dessutom är det ett bra sätt att optimera din dator för maximal prestanda. Programmet åtgärdar vanligt förekommande fel som kan uppstå på Windows -system - utan behov av timmar med felsökning när du har den perfekta lösningen till hands:

  • Steg 1: Ladda ner PC Repair & Optimizer Tool (Windows 10, 8, 7, XP, Vista - Microsoft Gold Certified).
  • Steg 2: Klicka på "Starta Scan"För att hitta Windows-registerproblem som kan orsaka problem med datorn.
  • Steg 3: Klicka på "Reparera allt"För att åtgärda alla problem.

ladda ner



STÄLL IN IDENTITY_INSERT. . {AV | SÄKER }
Det första argumentet är namnet på den databas där tabellen finns. Det andra argumentet som specificerar är det schema som denna tabell tillhör, vars ID-värde ska sättas till PÅ eller AV. Det tredje argumentet är en tabell med en identitetskolumn.

Det finns två huvudsakliga sätt att infoga data i en tabell utan fel. De anses vara en lösning på detta fel och beskrivs nedan.

Berätta för SQL Server vad identifieringsvärdet ska vara

Om du vill ange ID-värden för de poster du sätter in måste du köra ett litet SQL-kommando för att aktivera ID-insättning innan du kör INSERT-satsen. Med identitetsinlägg kan du fylla värdet på en identitetskolumn med ett specifikt värde.

Tillåt SQL Server att generera ID

Om du inte bryr dig om identitetsvärdena för dessa poster bör du låta SQL Server bara generera identitetsvärdena åt dig. För att göra detta anger du helt enkelt tabellkolumnerna och utelämnar identitetskolumnen.



Expert Tips: Detta reparationsverktyg skannar arkiven och ersätter korrupta eller saknade filer om ingen av dessa metoder har fungerat. Det fungerar bra i de flesta fall där problemet beror på systemkorruption. Detta verktyg kommer också att optimera ditt system för att maximera prestanda. Den kan laddas ner av Klicka här