Zum Hauptinhalt springen

Hinzufügen von identity zu einer SQL Server-Tabelle

Identity SQL Server stellt eine spezielle Eigenschaft dar, mit der Sie eindeutige numerische Werte für eine Spalte in einer Tabelle generieren können. Dies ist sehr nützlich, wenn Sie jedem Datensatz in einer Tabelle eine eindeutige ID hinzufügen müssen. In diesem Artikel erfahren Sie, wie Sie einer SQL Server-Tabelle identity hinzufügen.

Schritt 1: Erstellen Sie eine neue Tabelle in SQL Server Management Studio, oder verwenden Sie eine bereits vorhandene Tabelle, der Sie eine Identität hinzufügen möchten. Wenn Sie eine neue Tabelle erstellen, definieren Sie den Namen der Tabelle und die Spalten, die Sie hinzufügen möchten.

Schritt 2: Definieren Sie die Spalte, der Sie die identity hinzufügen möchten, als Spalte mit dem Datentyp int.

Schritt 3: Klicken Sie mit der rechten Maustaste auf die ausgewählte Tabelle und wählen Sie die Option "Design". Im geöffneten Tabellendesignerfenster sehen Sie eine Liste der Tabellenspalten.

Schritt 4: Wählen Sie die Spalte aus, der Sie eine Identität hinzufügen möchten, und öffnen Sie ihre Eigenschaften. Legen Sie im Eigenschaftenfenster die Eigenschaft Identity Specification auf Yes fest, und geben Sie ggf. einen Anfangswert und ein Inkrement von Identitäten an.

Nachdem Sie diese Schritte ausgeführt haben, verfügt Ihre Spalte über eine identity-Eigenschaft in der SQL Server-Tabelle. Die IDs werden automatisch generiert, wenn neue Datensätze in die Tabelle eingefügt werden. Jetzt können Sie diese IDs verwenden, um jeden Datensatz in Ihrer Tabelle eindeutig zu identifizieren.

Was ist identity in SQL Server?

Sie können eine Identity-Spalte in SQL Server mithilfe des IDENTITY-Schlüsselworts erstellen. Es kann verschiedene Datentypen haben, z. B. int , bigint oder smallint .

Wenn ein neuer Datensatz einer Tabelle mit einer identity-Spalte hinzugefügt wird, erhöht SQL Server den identity-Wert automatisch um 1 und weist ihn dem neuen Datensatz zu. Dadurch wird sichergestellt, dass jeder Datensatz über eine eindeutige ID verfügt, mit der die Daten referenziert und sortiert werden können.

Die Identity-Spalte kann nützlich sein, wenn Sie Beziehungen zwischen Tabellen erstellen oder die Reihenfolge der Datensätze in einem bestimmten Kontext angeben. Es kann auch das Einfügen neuer Daten in eine Tabelle erheblich vereinfachen, da Sie bei jeder Einfügung keinen Identitätswert explizit angeben müssen.

Beachten Sie jedoch, dass identity-Werte bei bestimmten Vorgängen wie dem Löschen und Einfügen von Datensätzen wiederhergestellt oder geändert werden können. Daher müssen Sie bei der Verwendung der identity-Spalte vorsichtig sein und sicherstellen, dass sie den Anforderungen und der Logik Ihrer Datenbank entspricht.

Wie funktioniert der Identity-Mechanismus in SQL Server?

Der Identity-Mechanismus in SQL Server bietet eine Möglichkeit, eindeutige Bezeichner für Spalten in Datenbanktabellen automatisch zu generieren. Dieser Mechanismus ist besonders nützlich, wenn Sie einen Primärschlüssel für eine Tabelle erstellen, in der sichergestellt werden muss, dass jeder Wert in einer Spalte eindeutig ist.

Um den identity-Mechanismus in SQL Server zu verwenden, müssen Sie die Spalte als Datentyp "int" oder "bigint" definieren und die Eigenschaft "identity" für die Spalte festlegen. Wenn Sie einer Tabelle eine neue Zeile hinzufügen, generiert SQL Server automatisch einen eindeutigen Wert für diese Spalte. Die Werte werden nacheinander und in aufsteigender Reihenfolge generiert, beginnend mit einem bestimmten Anfangswert.

Sie können den Anfangswert und den Inkrementschritt des identity-Mechanismus beim Erstellen einer Tabelle anpassen oder später mit dem Befehl ALTER TABLE ändern. Sie können auch angeben, dass der identity-Mechanismus mit der Generierung von Werten ab einer bestimmten Zahl beginnt.

Der identity-Mechanismus in SQL Server kann auch verwendet werden, um automatisch Werte zu anderen Spalten in einer Tabelle hinzuzufügen. Wenn Sie beispielsweise eine Zeile erstellen, können Sie angeben, dass SQL Server die Werte für die Spalte "Erstellungsdatum" oder "Der Benutzer, der den Datensatz erstellt hat" automatisch auffüllt.

Wenn Sie den identity-Mechanismus verwenden, ist es wichtig, sich daran zu erinnern, dass die Werte in der Spalte eindeutig sind, aber nicht unbedingt konsistent sind. Wenn Sie Tabellenzeilen löschen, werden die Werte möglicherweise erneut verwendet, was zu Auslassungen in der Sequenz führen kann. Es wird auch nicht empfohlen, den identity-Mechanismus zum Generieren von Werten zu verwenden, wenn absolute Eindeutigkeit gewährleistet werden muss, z. B. bei der Arbeit mit einem Mehrbenutzersystem.

Wie erstelle ich eine Tabelle mit identity?

In SQL Server können Sie eine Tabelle mit identity erstellen, um beim Einfügen neuer Datensätze automatisch eindeutige Werte für eine Spalte zu generieren.

Um eine Tabelle mit identity zu erstellen, müssen Sie die folgenden Schritte ausführen:

  1. Öffnen Sie SQL Server Management Studio, und stellen Sie eine Verbindung zu Ihrem Datenbankserver her.
  2. Wählen Sie die Datenbank aus, in der Sie die Tabelle erstellen möchten.
  3. Klicken Sie mit der rechten Maustaste auf den Ordner Tabellen und wählen Sie Neue Tabelle aus.
  4. Geben Sie einen Namen für Ihre Tabelle ein und definieren Sie die Spalten der Tabelle entsprechend.
  5. Wählen Sie die Spalte aus, für die Sie eine Identität erstellen möchten.
  6. Setzen Sie in den Spalteneigenschaften den Parameter "Identity Specification" auf "Yes".
  7. Legen Sie den gewünschten Anfangswert und den gewünschten Schritt für identity fest.
  8. Klicken Sie auf die Schaltfläche Speichern oder Speichern, um eine Tabelle mit identity zu erstellen.

Wenn Sie nun einen neuen Datensatz in die Tabelle einfügen, generiert SQL Server automatisch einen eindeutigen Wert für die Spalte mit identity.

Das Erstellen einer Tabelle mit identity vereinfacht daher das Hinzufügen neuer Datensätze und stellt sicher, dass die Werte in einer bestimmten Spalte eindeutig sind.

Wie ändere ich die identity-Eigenschaft einer Tabelle?

In SQL Server können Sie die identity-Eigenschaften einer Tabellenspalte ändern, einschließlich des Anfangswerts und des Inkrementschritts.

Um die identity-Eigenschaft einer Tabelle zu ändern, müssen Sie die ALTER TABLE-Anweisung verwenden.

Um beispielsweise den Anfangswert und den Inkrementschritt für die identity-Eigenschaft der Spalte "id" in der Tabelle "users" zu ändern, verwenden Sie die folgende Syntax:

TabellennameSpaltennameAnfangswertInkrement-Schritt
usersid10010

Speichern Sie die Änderungen, indem Sie die ALTER TABLE-Anweisung ausführen:

ALTER TABLE usersALTER COLUMN idIDENTITY(100, 10)

Nachdem Sie diese Anweisung ausgeführt haben, werden die identity-Eigenschaften der Spalte "id" in der Tabelle "users" in neue Werte geändert.

Wie füge ich eine identity-Spalte zu einer vorhandenen Tabelle hinzu?

Wenn Sie bereits eine Tabelle in SQL Server ohne eine Spalte mit Identität haben, diese jedoch hinzufügen möchten, können Sie das folgende Skript verwenden:

Syntax:

ALTER TABLE table_nameADD column_name data_type IDENTITY(начальное_значение, приращение);

Ein Beispiel:

ALTER TABLE customersADD customer_id INT IDENTITY(1,1);

Im obigen Beispiel fügen wir die Spalte "customer_id" mit dem Datentyp INT und dem eingestellten Anfangswert 1 hinzu, das Inkrement ist ebenfalls 1.

Nachdem das Skript ausgeführt wurde, wird die Identitätsspalte der vorhandenen Tabelle hinzugefügt und beim Einfügen neuer Datensätze automatisch vergrößert.

Wie entferne ich die identity Eigenschaft aus einer Tabelle?

Um die identity-Eigenschaft aus einer Tabelle in SQL Server zu entfernen, befolgen Sie diese Schritte:

  1. Öffnen Sie SQL Server Management Studio, und stellen Sie eine Verbindung zum Datenbankserver her.
  2. Wählen Sie die Datenbank aus, die die Tabelle enthält, aus der Sie die identity Eigenschaft entfernen möchten.
  3. Klicken Sie mit der rechten Maustaste auf die Tabelle und wählen Sie "Design" oder "Bearbeiten".
  4. Suchen Sie im geöffneten Tabelleneditor nach der Spalte mit der identity Eigenschaft.
  5. Klicken Sie auf die Spalte, um sie auszuwählen.
  6. Suchen Sie in den Spalteneigenschaften nach der Eigenschaft "Identity Specification" und setzen Sie ihren Wert auf "No".
  7. Speichern Sie die Änderungen, indem Sie auf die Schaltfläche "Speichern" oder "Speichern" klicken.

Nach Abschluss dieser Schritte wird die identity-Eigenschaft aus der Tabelle entfernt, und die Spalte wird nicht mehr automatisch mit Werten gefüllt.

Wie verwende ich identity, um einen Spaltenwert automatisch zu inkrementieren?

Führen Sie die folgenden Schritte aus, um eine identity zu einer Tabellenspalte hinzuzufügen:

  1. Erstellen Sie eine Tabelle mit den gewünschten Feldern, einschließlich der Spalte, für die Sie identity verwenden möchten.
  2. Geben Sie den Datentyp für die Spalte an, z. B. int oder bigint, und fügen Sie danach das IDENTITY-Schlüsselwort hinzu. Zum Beispiel id int IDENTITY(1,1) .
  3. Der Wert 1,1 in Klammern bedeutet den Anfangswert und das Inkrement des Werts. In diesem Beispiel ist der Anfangswert 1 und das Inkrement 1.
  4. Wenn Sie andere Anfangswerte und Inkremente anpassen möchten, können Sie diese in der IDENTITY-Funktion ändern.
  5. Definieren Sie die anderen Spalten in der Tabelle und ihre Datentypen.
  6. Schließen Sie die Tabellenerstellung ab, und führen Sie die Abfrage aus, um sie zu speichern.

Wenn Sie dieser Tabelle nun neue Datensätze hinzufügen, generiert SQL Server automatisch eindeutige Bezeichner für die als identity angegebene Spalte. Diese werden mit jedem neuen Eintrag automatisch vergrößert.

Wenn Sie beispielsweise über eine Tabelle "users" verfügen und einen neuen Benutzer hinzufügen, ohne einen Wert für die ID-Spalte anzugeben, generiert SQL Server automatisch eine eindeutige ID für diesen Benutzer.

Die Verwendung von identity in SQL Server vereinfacht die Generierung eindeutiger Bezeichner für Spalten und erleichtert die Arbeit mit der Datenbank.

Wie verwende ich identity für eine eindeutige String-ID?

Führen Sie die folgenden Schritte aus, um identity in einer SQL Server-Tabelle zu verwenden:

  1. Erstellen Sie eine Tabelle mit dem Datentyp "int" und legen Sie die IDENTITY-Eigenschaft fest.
  2. Geben Sie einen Anfangswert und einen Inkrementschritt für identity an.
  3. Fügen Sie der Tabelle Daten hinzu, indem Sie das Feld mit der ID überspringen.

Hier ist ein Beispielcode zum Erstellen einer Tabelle mit identity:

CREATE TABLE [Имя таблицы] ([Имя поля] [тип данных] IDENTITY(1,1) NOT NULL,[Другие поля] [тип данных]. )
  • [Tabellenname] - der Name der Tabelle, in der identity verwendet wird.
  • [Feldname] - der Name des Feldes, das der Bezeichner ist.
  • [Datentyp] - datentyp des Feldes.

Der folgende Code erstellt beispielsweise die Tabelle "Products" mit dem Feld "ProductID" als Bezeichner:

CREATE TABLE Products (ProductID int IDENTITY(1,1) NOT NULL,ProductName varchar(255),Price money)

Nachdem das Identity-Feld jetzt erstellt wurde, können Sie der Tabelle Daten hinzufügen, indem Sie das ID-Feld überspringen:

INSERT INTO Products (ProductName, Price)VALUES ('Product1', 10.99),('Product2', 20.99),('Product3', 30.99)

SQL Server generiert automatisch einen eindeutigen numerischen Wert für jede neue Zeile im identity-Feld. Sie können diesen Wert verwenden, um bestimmte Zeilen in einer Tabelle zu identifizieren und zu bearbeiten.

Wie füge ich eine Fremdschlüsselspalte hinzu?

Wenn wir eine Tabelle in SQL Server erstellen, müssen wir manchmal einen Fremdschlüssel hinzufügen, der auf eine andere Tabelle verweist. Wenn wir möchten, dass dieser Fremdschlüssel automatisch aufgefüllt und eindeutig ist, können wir eine Spalte mit dem identity-Datentyp verwenden.

Hier ist ein Beispiel, wie Sie eine identity-Fremdschlüsselspalte hinzufügen:

    Erstellen Sie eine Tabelle, in der Sie einen Fremdschlüssel hinzufügen möchten. Zum Beispiel werden wir die Tabelle "Orders" erstellen:

CREATE TABLE Orders(OrderID int IDENTITY(1,1) PRIMARY KEY,OrderDate datetime,CustomerID int,-- Другие столбцы)
ALTER TABLE OrdersADD CONSTRAINT FK_Orders_Customers FOREIGN KEY (CustomerID)REFERENCES Customers(CustomerID)

In diesem Beispiel haben wir die Tabelle "Orders" mit der Spalte "OrderID" mit dem Datentyp "int" und dem eindeutigen identity-Wert erstellt. Dann haben wir die Spalte "CustomerID" des Fremdschlüssels hinzugefügt, die auf die Spalte "CustomerID" in der Tabelle "Customers" verweist.

Mit der identity Spalte eines Fremdschlüssels können wir seine Werte automatisch auffüllen, wenn wir neue Datensätze zu einer Tabelle hinzufügen. Dies macht das Hinzufügen und Aktualisieren von Daten bequemer und effizienter.