Sådan Reset en Identity Frø i Microsoft SQL

En IDENTITET værdi er meget ligesom et fingeraftryk , er det entydigt identificerer en række i en database tabel . fingeraftryk billede ved dip fra Fotolia.com

Microsoft SQL Server understøtter brugen af ​​én IDENTITET kolonne pr bord.En IDENTITET kolonne giver en numerisk værdi, som kan bruges som en nøgle eller referenceværdi.IDENTITET kolonner automatisk øges, hver gang en ny række føjes til tabellen.Identiteten værdi begynder ved en brugervenlig forudsat værdi, kaldet frø, eller til 1, hvis ingen værdi er angivet, og stiger med brugeren-leverede mængde, kaldet tilvækst, eller med 1, hvis ingen værdi er angivet.Nulstilling af start værdi eller tilvækst af identitet kolonne kræver enten droppe kolonnen og oprette en ny eller beskærer bordet og kører DBCC CHECKIDENT.

hvad du har brug

  • Administrative rettigheder til databasen

Drop og genskabe en kolonne

  1. Åben en forbindelse til den ønskede database ved hjælp af Microsoft SQL Server Management Studio eller dit foretrukne program.

  2. Skriv en forespørgsel til at droppe den eksisterende identitet kolonnen.Dette skal gør

    es, inden du opretter en ny identitet kolonne fordi hver tabel kan kun have én identitet kolonne.Syntaksen er:

    ALTER TABLE [tabelnavn] DROP COLUMN [kolonnenavn]

    Dette vil helt fjerne den aktuelle IDENTITET kolonne af tabellen, der forårsager tab af eksisterende identitet værdier.Hvis vil være behov for disse værdier, skal de bakkes op eller kopieres til en ikke-identitet rækken først.

  3. Type og udføre en forespørgsel for at tilføje en ny identitet kolonne.Syntaksen er:

    ALTER TABLE [tabelnavn] Tilføj kolonne [kolonnenavn] IDENTITET ([såsæd], [tilvækst])

    Supply ønskede udgangspunkt for frøet og tilvækst værdi for tilvækst.Dette vil skabe en ny kolonne med ingen sprunget dataværdier.

Brug Trunkering og DBCC CHECKIDENT

  1. Åben en forbindelse til den ønskede database ved hjælp af Microsoft SQL Server Management Studio eller dit foretrukne program.

  2. trunkere bordet.Dette fjerner alle data fra tabellen, så sørg for der er ingen data, du ønsker at beholde.Syntaksen er:

    trunkere [tabelnavn]

  3. Run DBCC CHECKIDENT at ændre værdien frø.Dette ændrer ikke tilvækst værdi.Tilvækst værdier kan kun ændres ved hjælp af metoden i afsnit 1. Syntaksen for dette er:

    DBCC CHECKIDENT ([tabelnavn], reseed, [new_seed])

    Den nye frø værdi vil være den første værdi, der bruges, når du sætter en nyrække.

Tips & amp;Advarsler

  • identitet værdier er undertiden bruges som primære nøgler.Hvis en nøgle tilknytning eksisterer, kan forholdet ugyldiggør reseeding IDENTITY-kolonnen.Evaluer dine data omhyggeligt inden du forsøger dette.
  • Databaser hjælp replikering har særlige bekymringer i forbindelse med identitetsspørgsmål kolonner.Betegner de midler, for mere information.
  • Table trunkering, som præsenteret i afsnit 2, fjerner fuldstændigt alle data fra tabellen og bør aldrig bruges, hvis tabellen indeholder vigtige data.

Ressourcer

  • Microsoft: Replikering Identitet Kolonner
833
0
1
Database Software