Primärschlüssel- und FremdschlüsseleinschränkungenPrimary and Foreign Key Constraints

DIESES THEMA GILT FÜR:jaSQL Server (ab 2016)jaAzure SQL-DatenbankneinAzure SQL Data Warehouse neinParallel Data WarehouseTHIS TOPIC APPLIES TO: yesSQL Server (starting with 2016)yesAzure SQL DatabasenoAzure SQL Data Warehouse noParallel Data Warehouse

Primärschlüssel und Fremdschlüssel sind zwei Typen von Einschränkungen, die zum Erzwingen der Datenintegrität in SQL ServerSQL Server -Tabellen verwendet werden können.Primary keys and foreign keys are two types of constraints that can be used to enforce data integrity in SQL ServerSQL Server tables. Diese sind wichtige Datenbankobjekte.These are important database objects.

Dieses Thema enthält folgende Abschnitte:This topic contains the following sections.

PRIMARY KEY-EinschränkungenPrimary Key Constraints

Foreign Key ConstraintsForeign Key Constraints

Verwandte AufgabenRelated Tasks

PRIMARY KEY-Einschränkungen Primary Key Constraints

Eine Tabelle verfügt normalerweise über eine Spalte oder eine Kombination aus Spalten, die Werte enthalten, die jede Zeile in der Tabelle eindeutig identifizieren.A table typically has a column or combination of columns that contain values that uniquely identify each row in the table. Diese Spalte oder Kombination aus Spalten wird als Primärschlüssel (PK, Primary Key) der Tabelle bezeichnet und erzwingt die Entitätsintegrität der Tabelle.This column, or columns, is called the primary key (PK) of the table and enforces the entity integrity of the table. Da PRIMARY KEY-Einschränkungen eindeutige Daten garantieren, werden sie häufig für eine Identitätsspalte definiert.Because primary key constraints guarantee unique data, they are frequently defined on an identity column.

Wenn Sie eine PRIMARY KEY-Einschränkung für eine Tabelle angeben, erzwingt DatenbankmodulDatabase Engine die Eindeutigkeit der Daten, indem automatisch ein eindeutiger Index für die Primärschlüsselspalten erstellt wird.When you specify a primary key constraint for a table, the DatenbankmodulDatabase Engine enforces data uniqueness by automatically creating a unique index for the primary key columns. Der Index ermöglicht darüber hinaus den schnellen Zugriff auf Daten, wenn der Primärschlüssel in Abfragen verwendet wird.This index also permits fast access to data when the primary key is used in queries. Wenn eine PRIMARY KEY-Einschränkung für mehrere Spalten definiert wird, können Werte innerhalb einer Spalte dupliziert werden; jede Kombination aus den Werten aller Spalten, die in der Definition der PRIMARY KEY-Einschränkung enthalten sind, muss jedoch eindeutig sein.If a primary key constraint is defined on more than one column, values may be duplicated within one column, but each combination of values from all the columns in the primary key constraint definition must be unique.

Wie in der nachfolgenden Abbildung dargestellt, müssen die Spalten ProductID und VendorID in der Purchasing.ProductVendor -Tabelle eine zusammengesetzte PRIMARY KEY-Einschränkung für diese Tabelle bilden.As shown in the following illustration, the ProductID and VendorID columns in the Purchasing.ProductVendor table form a composite primary key constraint for this table. Dadurch wird sichergestellt, dass jede Zeile in der ProductVendor -Tabelle eine eindeutige Kombination aus ProductID und VendorIDaufweist.This makes sure that that every row in the ProductVendor table has a unique combination of ProductID and VendorID. Dies verhindert die Einfügung doppelter Zeilen.This prevents the insertion of duplicate rows.

Zusammengesetzte PRIMARY KEY-EinschränkungComposite PRIMARY KEY constraint

  • Eine Tabelle kann nur eine PRIMARY KEY-Einschränkung enthalten.A table can contain only one primary key constraint.

  • Ein Primärschlüssel darf 16 Spalten und eine gesamte Schlüssellänge von 900 Bytes nicht überschreiten.A primary key cannot exceed 16 columns and a total key length of 900 bytes.

  • Der durch eine PRIMARY KEY-Einschränkung generierte Index darf nicht dazu führen, dass die Anzahl der Indizes der Tabelle 999 nicht gruppierte Indizes und einen gruppierten Index übersteigt.The index generated by a primary key constraint cannot cause the number of indexes on the table to exceed 999 nonclustered indexes and 1 clustered index.

  • Wenn CLUSTERED oder NONCLUSTERED für eine PRIMARY KEY-Einschränkung nicht angegeben ist, wird CLUSTERED verwendet, sofern keine gruppierten Indizes für die Tabelle vorliegen.If clustered or nonclustered is not specified for a primary key constraint, clustered is used if there no clustered index on the table.

  • Alle Spalten, für die eine PRIMARY KEY-Einschränkung definiert wurde, müssen ungleich NULL definiert sein.All columns defined within a primary key constraint must be defined as not null. Falls keine NULL-Zulässigkeit angegeben ist, wird für alle Spalten, auf die eine PRIMARY KEY-Einschränkung angewendet wird, die NULL-Zulässigkeit auf NOT NULL festgelegt.If nullability is not specified, all columns participating in a primary key constraint have their nullability set to not null.

  • Wenn ein Primärschlüssel für eine Spalte eines CLR-benutzerdefinierten Typs definiert wird, muss die Implementierung des Typs eine binäre Sortierreihenfolge unterstützen.If a primary key is defined on a CLR user-defined type column, the implementation of the type must support binary ordering.

Foreign Key Constraints Foreign Key Constraints

Ein Fremdschlüssel (FS) ist eine Spalte oder eine Kombination von Spalten, mit deren Hilfe eine Verknüpfung zwischen den Daten in zwei Tabellen eingerichtet und erzwungen wird, um die Daten zu steuern, die in der Fremdschlüsseltabelle gespeichert werden können.A foreign key (FK) is a column or combination of columns that is used to establish and enforce a link between the data in two tables to control the data that can be stored in the foreign key table. In einem Fremdschlüsselverweis wird zwischen zwei Tabellen ein Link erstellt, wenn eine Spalte bzw. mehrere Spalten einer Tabelle auf die Spalte bzw. Spalten mit dem Primärschlüsselwert einer anderen Tabelle verweisen.In a foreign key reference, a link is created between two tables when the column or columns that hold the primary key value for one table are referenced by the column or columns in another table. Diese Spalte wird zu einem Fremdschlüssel in der zweiten Tabelle.This column becomes a foreign key in the second table.

Nehmen Sie beispielsweise an, die Sales.SalesOrderHeader -Tabelle weist eine Fremdschlüsselverknüpfung zur Sales.SalesPerson -Tabelle auf, da eine logische Beziehung zwischen „Sales Orders“ (Kaufaufträgen) und „Sales People“ (Vertriebsmitarbeiter) besteht.For example, the Sales.SalesOrderHeader table has a foreign key link to the Sales.SalesPerson table because there is a logical relationship between sales orders and salespeople. Die SalesPersonID -Spalte der SalesOrderHeader -Tabelle stimmt mit der Primärschlüsselspalte der SalesPerson -Tabelle überein.The SalesPersonID column in the SalesOrderHeader table matches the primary key column of the SalesPerson table. Die SalesPersonID -Spalte der SalesOrderHeader -Tabelle ist der Fremdschlüssel für die SalesPerson -Tabelle.The SalesPersonID column in the SalesOrderHeader table is the foreign key to the SalesPerson table. Wenn Sie diese Fremdschlüsselbeziehung erstellen, kann ein Wert für SalesPersonID nicht in die SalesOrderHeader -Tabelle eingefügt werden, wenn er nicht bereits in der SalesPerson -Tabelle vorhanden ist.By creating this foreign key relationship, a value for SalesPersonID cannot be inserted into the SalesOrderHeader table if it does not already exist in the SalesPerson table.

Eine Tabelle kann auf maximal 253 andere Tabellen und Spalten als Fremdschlüssel (ausgehende Referenzen) verweisen.A table can reference a maximum of 253 other tables and columns as foreign keys (outgoing references). SQL Server 2016SQL Server 2016 erhöht den Grenzwert für die Anzahl der anderen Tabellen und Spalten, die auf Spalten in einer einzelnen Tabelle (eingehende Referenzen) verweisen können, von 253 auf 10.000. increases the limit for the number of other table and columns that can reference columns in a single table (incoming references), from 253 to 10,000. (Kompatibilitätsgrad 130 oder höher erforderlich.) Für die Erhöhung gelten folgende Einschränkungen:(Requires at least 130 compatibility level.) The increase has the following restrictions:

  • Mehr als 253 Fremdschlüsselverweise werden nur für DELETE DML-Operationen unterstützt.Greater than 253 foreign key references are only supported for DELETE DML operations. UPDATE- und MERGE-Operationen werden nicht unterstützt.UPDATE and MERGE operations are not supported.

  • Auch eine Tabelle mit einem Fremdschlüsselverweis auf sich selbst ist auf 253 Fremdschlüsselverweise beschränkt.A table with a foreign key reference to itself is still limited to 253 foreign key references.

  • Für Columnstore-Indizes, speicheroptimierte Tabellen, Datenbanken mit aktiviertem Stretch oder partitionierte Fremdschlüsseltabellen sind derzeit nicht mehr als 253 Fremdschlüsselverweise möglich.Greater than 253 foreign key references are not currently available for columnstore indexes, memory-optimized tables, Stretch Database, or partitioned foreign key tables.

Indizes für FremdschlüsseleinschränkungenIndexes on Foreign Key Constraints

Im Gegensatz zu PRIMARY KEY-Einschränkungen wird bei der Erstellung einer FOREIGN KEY-Einschränkung nicht automatisch ein entsprechender Index generiert.Unlike primary key constraints, creating a foreign key constraint does not automatically create a corresponding index. Das manuelle Erstellen eines Indexes für einen Fremdschlüssel empfiehlt sich jedoch aus folgenden Gründen:However, manually creating an index on a foreign key is often useful for the following reasons:

  • Fremdschlüsselspalten werden häufig in Joinkriterien verwendet, wenn Daten aus verbundenen Tabellen in Abfragen kombiniert werden, indem die Übereinstimmungen zwischen der oder den Spalten in der FOREIGN KEY-Einschränkung einer Tabelle und der oder den Spalten eines Primärschlüssels oder eines eindeutigen Schlüssels in der anderen Tabelle ermittelt werden.Foreign key columns are frequently used in join criteria when the data from related tables is combined in queries by matching the column or columns in the foreign key constraint of one table with the primary or unique key column or columns in the other table. Ein Index ermöglicht DatenbankmodulDatabase Engine , die verbundenen Daten in der Fremdschlüsseltabelle schnell zu finden.An index enables the DatenbankmodulDatabase Engine to quickly find related data in the foreign key table. Es ist jedoch nicht zwingend erforderlich, einen Index zu erstellen.However, creating this index is not required. Daten aus zwei verbundenen Tabellen können auch dann kombiniert werden, wenn zwischen diesen Tabellen keine PRIMARY KEY-Einschränkung oder FOREIGN KEY-Einschränkung definiert ist. Eine Fremdschlüsselbeziehung zwischen zwei Tabellen weist jedoch darauf hin, dass die beiden Tabellen dahingehend optimiert wurden, um in einer Abfrage kombiniert zu werden, die die Schlüssel als Kriterium verwendet.Data from two related tables can be combined even if no primary key or foreign key constraints are defined between the tables, but a foreign key relationship between two tables indicates that the two tables have been optimized to be combined in a query that uses the keys as its criteria.

  • Änderungen an PRIMARY KEY-Einschränkungen werden mithilfe von FOREIGN KEY-Einschränkungen in verbundenen Tabellen überprüft.Changes to primary key constraints are checked with foreign key constraints in related tables.

Referenzielle IntegritätReferential Integrity

Eine FOREIGN KEY-Einschränkung dient zwar in erster Linie zur Kontrolle der Daten, die in der Fremdschlüsseltabelle gespeichert werden können; sie kontrolliert jedoch auch die Änderungen, die an Daten in der Primärschlüsseltabelle vorgenommen werden.Although the main purpose of a foreign key constraint is to control the data that can be stored in the foreign key table, it also controls changes to data in the primary key table. Wenn z.B. die Zeile für einen Vertriebsmitarbeiter aus der Sales.SalesPerson -Tabelle gelöscht, die ID des Vertriebsmitarbeiters jedoch weiterhin für Kaufaufträge in der Sales.SalesOrderHeader -Tabelle verwendet wird, ist die relationale Integrität zwischen den beiden Tabellen zerstört. Die Kaufaufträge des gelöschten Verkäufers sind in der SalesOrderHeader -Tabelle verwaist, da kein Link mehr zu Daten in der SalesPerson -Tabelle besteht.For example, if the row for a salesperson is deleted from the Sales.SalesPerson table, and the salesperson's ID is used for sales orders in the Sales.SalesOrderHeader table, the relational integrity between the two tables is broken; the deleted salesperson's sales orders are orphaned in the SalesOrderHeader table without a link to the data in the SalesPerson table.

Durch eine FOREIGN KEY-Einschränkung wird eine derartige Situation verhindert.A foreign key constraint prevents this situation. Die Einschränkung erzwingt die referenzielle Integrität, indem sichergestellt wird, dass Änderungen an Daten in der Primärschlüsseltabelle nicht möglich sind, wenn diese Änderungen dazu führen, dass der Link zu Daten in der Fremdschlüsseltabelle ungültig wird.The constraint enforces referential integrity by guaranteeing that changes cannot be made to data in the primary key table if those changes invalidate the link to data in the foreign key table. Wird ein Versuch unternommen, eine Zeile in einer Primärschlüsseltabelle zu löschen oder einen Primärschlüsselwert zu ändern, erzeugt diese Aktion einen Fehler, wenn der gelöschte oder geänderte Primärschlüsselwert einem Wert in der FOREIGN KEY-Einschränkung einer anderen Tabelle entspricht.If an attempt is made to delete the row in a primary key table or to change a primary key value, the action will fail when the deleted or changed primary key value corresponds to a value in the foreign key constraint of another table. Um eine Zeile in einer FOREIGN KEY-Einschränkung erfolgreich ändern oder löschen zu können, müssen Sie zuerst die Fremdschlüsseldaten in der Fremdschlüsseltabelle entweder löschen oder so ändern, dass der Fremdschlüssel mit anderen Primärschlüsseldaten verknüpft ist.To successfully change or delete a row in a foreign key constraint, you must first either delete the foreign key data in the foreign key table or change the foreign key data in the foreign key table, which links the foreign key to different primary key data.

Kaskadierende referenzielle IntegritätCascading Referential Integrity

Durch Verwendung von Einschränkungen der referenziellen Integrität können Sie die Aktionen definieren, die DatenbankmodulDatabase Engine durchführt, wenn ein Benutzer versucht, einen Schlüssel zu löschen oder zu aktualisieren, auf den Fremdschlüssel zeigen.By using cascading referential integrity constraints, you can define the actions that the DatenbankmodulDatabase Engine takes when a user tries to delete or update a key to which existing foreign keys point. Die folgenden kaskadierenden Aktionen können definiert werden.The following cascading actions can be defined.

NO ACTIONNO ACTION
DatenbankmodulDatabase Engine löst einen Fehler aus, und für die Aktion zum Löschen oder Aktualisieren der Zeile in der übergeordneten Tabelle wird ein Rollback ausgeführt.The DatenbankmodulDatabase Engine raises an error and the delete or update action on the row in the parent table is rolled back.

CASCADECASCADE
Wenn diese Zeile in der übergeordneten Tabelle aktualisiert oder gelöscht wird, werden die entsprechenden Zeilen in der verweisenden Tabelle aktualisiert oder gelöscht.Corresponding rows are updated or deleted in the referencing table when that row is updated or deleted in the parent table. CASCADE kann nicht angegeben werden, wenn eine timestamp -Spalte Teil eines Fremdschlüssels oder des Schlüssels ist, auf den verwiesen wird.CASCADE cannot be specified if a timestamp column is part of either the foreign key or the referenced key. ON DELETE CASCADE kann nicht für eine Tabelle angegeben werden, die einen INSTEAD OF-Trigger aufweist.ON DELETE CASCADE cannot be specified for a table that has an INSTEAD OF DELETE trigger. ON UPDATE CASCADE kann nicht für Tabellen angegeben werden, die INSTEAD OF UPDATE-Trigger aufweisen.ON UPDATE CASCADE cannot be specified for tables that have INSTEAD OF UPDATE triggers.

SET NULLSET NULL
Alle Werte, aus denen sich der Fremdschlüssel zusammensetzt, werden auf NULL festgelegt, wenn die entsprechende Zeile in der übergeordneten Tabelle aktualisiert oder gelöscht wird.All the values that make up the foreign key are set to NULL when the corresponding row in the parent table is updated or deleted. Die Fremdschlüsselspalten müssen NULL-Werte zulassen, um diese Einschränkung auszuführen.For this constraint to execute, the foreign key columns must be nullable. Diese Option kann nicht für Tabellen angegeben werden, die INSTEAD OF UPDATE-Trigger aufweisen.Cannot be specified for tables that have INSTEAD OF UPDATE triggers.

SET DEFAULTSET DEFAULT
Alle Werte, aus denen sich der Fremdschlüssel zusammensetzt, werden auf ihre Standardwerte festgelegt, wenn die entsprechende Zeile in der übergeordneten Tabelle aktualisiert oder gelöscht wird.All the values that make up the foreign key are set to their default values if the corresponding row in the parent table is updated or deleted. Alle Fremdschlüsselspalten müssen Standarddefinitionen aufweisen, damit diese Einschränkung ausgeführt wird.For this constraint to execute, all foreign key columns must have default definitions. Wenn eine Spalte NULL-Werte zulässt, und es ist kein expliziter Standardwert festgelegt, wird NULL als der implizite Standardwert für die Spalte verwendet.If a column is nullable, and there is no explicit default value set, NULL becomes the implicit default value of the column. Diese Option kann nicht für Tabellen angegeben werden, die INSTEAD OF UPDATE-Trigger aufweisen.Cannot be specified for tables that have INSTEAD OF UPDATE triggers.

CASCADE, SET NULL, SET DEFAULT und NO ACTION können für Tabellen kombiniert werden, die referenzielle Beziehungen untereinander aufweisen.CASCADE, SET NULL, SET DEFAULT and NO ACTION can be combined on tables that have referential relationships with each other. Wenn das DatenbankmodulDatabase Engine die Einstellung NO ACTION feststellt, wird die Verarbeitung beendet und ein Rollback für verbundene CASCADE-, SET NULL- und SET DEFAULT-Aktionen ausgeführt.If the DatenbankmodulDatabase Engine encounters NO ACTION, it stops and rolls back related CASCADE, SET NULL and SET DEFAULT actions. Wenn eine DELETE-Anweisung eine Kombination aus CASCADE-, SET NULL-, SET DEFAULT- und NO ACTION-Aktionen bewirkt, werden alle CASCADE-, SET NULL- und SET DEFAULT-Aktionen angewendet, bevor das DatenbankmodulDatabase Engine nach der möglichen Angabe von NO ACTION sucht.When a DELETE statement causes a combination of CASCADE, SET NULL, SET DEFAULT and NO ACTION actions, all the CASCADE, SET NULL and SET DEFAULT actions are applied before the DatenbankmodulDatabase Engine checks for any NO ACTION.

Trigger und kaskadierende referenzielle AktionenTriggers and Cascading Referential Actions

Kaskadierende referenzielle Aktionen lösen AFTER UPDATE- oder AFTER DELETE-Trigger in der folgenden Weise aus:Cascading referential actions fire the AFTER UPDATE or AFTER DELETE triggers in the following manner:

  • Alle kaskadierenden referenziellen Aktionen, die direkt von der ursprünglichen DELETE- oder UPDATE-Anweisung ausgelöst werden, werden zuerst ausgeführt.All the cascading referential actions directly caused by the original DELETE or UPDATE are performed first.

  • Wenn für die betroffenen Tabellen AFTER-Trigger definiert wurden, werden diese Trigger ausgelöst, nachdem alle kaskadierenden Aktionen ausgeführt wurden.If there are any AFTER triggers defined on the affected tables, these triggers fire after all cascading actions are performed. Diese Trigger werden in umgekehrter Reihenfolge zur kaskadierenden Aktion ausgelöst.These triggers fire in opposite order of the cascading action. Falls es mehrere Trigger für eine einzelne Tabelle gibt, werden diese in zufälliger Reihenfolge ausgelöst, sofern es für die Tabelle nicht einen dedizierten ersten oder letzten Trigger gibt.If there are multiple triggers on a single table, they fire in random order, unless there is a dedicated first or last trigger for the table. Diese Reihenfolge wird mithilfe von sp_settriggerorderangegeben.This order is as specified by using sp_settriggerorder.

  • Wenn mehrere kaskadierende Ketten ihren Ursprung in der Tabelle haben, die das direkte Ziel der UPDATE- oder DELETE-Aktion war, wird die Reihenfolge, in der diese Ketten ihre jeweiligen Trigger auslösen, nicht angegeben.If multiple cascading chains originate from the table that was the direct target of an UPDATE or DELETE action, the order in which these chains fire their respective triggers is unspecified. Allerdings löst immer erst eine Kette alle ihre Trigger aus, bevor eine andere Kette die Auslösung startet.However, one chain always fires all its triggers before another chain starts firing.

  • Ein AFTER-Trigger für die Tabelle, die das direkte Ziel einer UPDATE- oder DELETE-Aktion ist, wird unabhängig davon ausgelöst, ob davon irgendwelche Zeilen betroffen sind oder nicht.An AFTER trigger on the table that is the direct target of an UPDATE or DELETE action fires regardless of whether any rows are affected. In diesem Fall sind keine weiteren Tabellen von der Kaskadierung betroffen.There are no other tables affected by cascading in this case.

  • Wenn einer der vorherigen Trigger UPDATE- oder DELETE-Operationen für andere Tabellen ausführt, können diese Aktionen sekundäre kaskadierende Ketten starten.If any one of the previous triggers perform UPDATE or DELETE operations on other tables, these actions can start secondary cascading chains. Die Verarbeitung dieser sekundären Ketten erfolgt für jede UPDATE- oder DELETE-Operation zu einem Zeitpunkt, nachdem alle Trigger für alle primären Ketten ausgelöst wurden.These secondary chains are processed for each UPDATE or DELETE operation at a time after all triggers on all primary chains fire. Dieser Prozess kann für alle nachfolgenden UPDATE- oder DELETE-Operationen rekursiv wiederholt werden.This process may be recursively repeated for subsequent UPDATE or DELETE operations.

  • Die Ausführung von CREATE-, ALTER-, DELETE- oder anderen Operationen in der Datendefinitionssprache (DDL, Data Definition Language) können zur Auslösung von DDL-Triggern führen.Performing CREATE, ALTER, DELETE, or other data definition language (DDL) operations inside the triggers may cause DDL triggers to fire. Das kann schließlich zur Ausführung von DELETE- oder UPDATE-Operationen führen, die zusätzliche kaskadierende Ketten und Trigger starten.This may subsequently perform DELETE or UPDATE operations that start additional cascading chains and triggers.

  • Tritt innerhalb einer bestimmten kaskadierenden referenziellen Aktionskette ein Fehler auf, wird ein Fehler ausgelöst, in dieser Kette werden keine AFTER-Trigger ausgelöst, und für die DELETE- oder UPDATE-Operation, mit der die Kette erzeugt wurde, wird ein Rollback ausgeführt.If an error is generated inside any particular cascading referential action chain, an error is raised, no AFTER triggers are fired in that chain, and the DELETE or UPDATE operation that created the chain is rolled back.

  • Eine Tabelle mit einem INSTEAD OF-Trigger kann nicht gleichzeitig eine REFERENCES-Klausel aufweisen, die eine kaskadierende Aktion angibt.A table that has an INSTEAD OF trigger cannot also have a REFERENCES clause that specifies a cascading action. Ein AFTER-Trigger in einer Tabelle, die das Ziel einer kaskadierenden Aktion ist, kann jedoch eine INSERT-, UPDATE- oder DELETE-Anweisung in einer anderen Tabelle oder Sicht ausführen, die einen für dieses Objekt definierten INSTEAD OF-Trigger auslöst.However, an AFTER trigger on a table targeted by a cascading action can execute an INSERT, UPDATE, or DELETE statement on another table or view that fires an INSTEAD OF trigger defined on that object.

In der folgenden Tabelle sind die PRIMARY KEY- und FOREIGN KEY-Einschränkungen zugeordneten häufigen Tasks aufgeführt.The following table lists the common tasks associated with primary key and foreign key constraints.

TaskTask ThemaTopic
Beschreibt, wie ein Primärschlüssel erstellt wird.Describes how to create a primary key. Erstellen von PrimärschlüsselnCreate Primary Keys
Beschreibt, wie ein Primärschlüssel gelöscht wird.Describes how to delete a primary key. Löschen von PrimärschlüsselnDelete Primary Keys
Beschreibt, wie ein Primärschlüssel geändert wird.Describes how to modify a primary key. Ändern von PrimärschlüsselnModify Primary Keys
Beschreibt, wie Fremdschlüsselbeziehungen erstellt werden.Describes how to create foreign key relationships Erstellen von Fremdschlüssel-BeziehungenCreate Foreign Key Relationships
Beschreibt, wie Fremdschlüsselbeziehungen geändert werden.Describes how to modify foreign key relationships. Ändern von FremdschlüsselbeziehungenModify Foreign Key Relationships
Beschreibt, wie Fremdschlüsselbeziehungen gelöscht werden.Describes how to delete foreign key relationships. Löschen von Primärschlüssel-Fremdschlüssel-BeziehungenDelete Foreign Key Relationships
Beschreibt, wie Fremdschlüsseleigenschaften angezeigt werden.Describes how to view foreign key properties. Anzeigen von FremdschlüsseleigenschaftenView Foreign Key Properties
Beschreibt, wie FOREIGN KEY-Einschränkungen zur Replikation deaktiviert werden.Describes how to disable foreign key constraints for replication. Deaktivieren von Fremdschlüsseleinschränkungen für die ReplikationDisable Foreign Key Constraints for Replication
Beschreibt, wie FOREIGN KEY-Einschränkungen während einer INSERT- oder einer UPDATE-Anweisung deaktiviert werden.Describes how to disable foreign key constraints during an INSERT or UPDATE statement. Deaktivieren von Fremdschlüsseleinschränkungen mit INSERT- und UPDATE-AnweisungenDisable Foreign Key Constraints with INSERT and UPDATE Statements