Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

Der Wert der Identitätsspalte springt im SQL-Server plötzlich auf 1001

Microsoft hat die Art und Weise geändert, wie sie mit Identitätswerten in SQL Server 2012 umgehen, und infolgedessen können Sie Identitätslücken zwischen Ihren Datensätzen sehen, nachdem Sie Ihre SQL Server-Instanz oder Ihren Servercomputer neu gestartet haben. Es kann andere Gründe für diese ID-Lücke geben, es kann am automatischen Neustart des Servers nach der Installation eines Updates liegen.

Sie können die folgenden beiden Optionen verwenden

  • Ablaufverfolgungsflag 272o verwenden Dadurch wird für jeden generierten Identitätswert ein Protokolldatensatz generiert. Die Leistung der Identitätsgenerierung kann durch Aktivieren dieses Trace-Flags beeinträchtigt werden.

  • Verwenden Sie einen Sequenzgenerator mit der Einstellung NO CACHE

    Setzen des Ablaufverfolgungsflags 272 auf SQL Server 2012, das Sie hier erwarten

  • Öffnen Sie den "SQL Server-Konfigurationsmanager"

  • Klicken Sie im linken Bereich auf „SQL Server-Dienste“

  • Klicken Sie im rechten Bereich mit der rechten Maustaste auf den Namen Ihrer SQL Server-Instanz ->Standard:SQL Server(MSSQLSERVER)

  • Klicken Sie auf "Eigenschaften"

  • Klicken Sie auf "Startparameter"

  • Geben Sie im Textfeld "Startparameter angeben" "-T272"

    ein
  • Klicken Sie auf "Hinzufügen"

  • Bestätigen Sie die Änderungen