sammanfattning: i den här handledningen lär du dig hur du använder egenskapen SQL Server IDENTITY
för att lägga till en identitetskolumn i en tabell.
introduktion till SQL Server IDENTITY column
för att skapa en identitetskolumn för en tabell använder du egenskapen IDENTITY
enligt följande:
Code language: SQL (Structured Query Language) (sql)
i denna syntax:
- egenskapen
seed
är värdet för den första raden som läses in i tabellen., increment
är det inkrementella värdet som läggs till identitetsvärdet för föregående rad.
standardvärdet förseed
ochincrement
är 1 dvs (1,1). Det betyder att den första raden, som laddades in i bordet, kommer att ha värdet av en, den andra raden kommer att ha värdet 2 och så vidare.,
Antag att du vill att värdet för identitetskolumnen i den första raden är 10 och inkrementellt värde är 10, du använder följande syntax:
Code language: SQL (Structured Query Language) (sql)
Observera att SQL Server kan du bara ha en identitetskolumn per tabell.,NTITY example
låt oss skapa ett nytt schema som heter hr
för att öva:
Code language: SQL (Structured Query Language) (sql)
följande uttalande skapar en ny tabell med egenskapen IDENTITY
för kolumnen personligt identifieringsnummer:
sätt först in en ny rad i person
utgången är som följer:
som framgår tydligt från utgången har den första raden laddats med värdet av en i kolumnen person_id
.,
För det andra, sätt in en annan rad iperson
tabell:
här är utmatningen:
som du tydligt kan se från utmatningen har den andra raden värdet av två i
som du tydligt kan se från utmatningen har den andra raden värdet av två i kolumn.
återanvändning av identitetsvärden
SQL Server återanvänder inte identitetsvärdena. Om du sätter in en rad i identitetskolumnen och INSERT-satsen misslyckas eller rullas tillbaka, förloras identitetsvärdet och genereras inte igen., Detta resulterar i luckor i kolumnen identitet.
Tänk på följande exempel.
skapa först ytterligare två tabeller i hr-schemat som heterposition
ochperson_position
:
För det andra, sätt in en ny person och tilldela den nya personen en position genom att infoga en ny rad i tabellenperson_position
:
i det här exemplet utfördes den första insert-satsen framgångsrikt. Den andra misslyckades dock på grund av ingen position med id one i tabellen position
. På grund av felet rullades hela transaktionen tillbaka.,
eftersom den första INSERT
– satsen konsumerade identitetsvärdet för tre och transaktionen rullade tillbaka, kommer nästa identitetsvärde att vara fyra som visas i följande uttalande:
utdata från uttalandet är:
iv id = ”
i den här handledningen har du lärt dig hur du använder egenskapen SQL Server IDENTITY
för att skapa en identitetskolumn för en tabell.