Heim  >  Artikel  >  Datenbank  >  So erstellen Sie Fremdschlüsseleinschränkungen in MySQL

So erstellen Sie Fremdschlüsseleinschränkungen in MySQL

下次还敢
下次还敢Original
2024-05-01 20:28:00362Durchsuche

Das Erstellen von Fremdschlüsseleinschränkungen in MySQL kann die Verknüpfung von Untertabellendatensätzen mit Haupttabellendatensätzen erzwingen, um die Datenintegrität sicherzustellen. Zu den spezifischen Schritten gehören: 1. Geben Sie die Fremdschlüsselspalte der Untertabelle an. 2. Verweisen Sie auf die eindeutige Indexspalte der Haupttabelle. 3. Richten Sie kaskadierende Lösch- oder Aktualisierungsvorgänge ein.

So erstellen Sie Fremdschlüsseleinschränkungen in MySQL

Erstellen von Fremdschlüsseleinschränkungen in MySQL

Fremdschlüsseleinschränkungen sind eine Datenbankeinschränkung, die verwendet wird, um die Datenintegrität in einer Tabelle sicherzustellen. Es zwingt jeden Datensatz in der untergeordneten Tabelle, auf einen vorhandenen Datensatz in der Haupttabelle zu verweisen.

So erstellen Sie eine Fremdschlüsseleinschränkung

In MySQL können Sie eine Fremdschlüsseleinschränkung erstellen, indem Sie die Fremdschlüsseleinschränkung beim Erstellen der untergeordneten Tabelle angeben. Die Syntax lautet wie folgt:

<code class="sql">CREATE TABLE child_table (
  child_column INT NOT NULL,
  PRIMARY KEY (child_column),
  FOREIGN KEY (child_column) REFERENCES parent_table (parent_column)
);</code>

wobei:

  • child_table der Name der untergeordneten Tabelle ist. child_table 是子表名称。
  • parent_table 是主表名称。
  • child_column 是子表中的外键列。
  • parent_column 是主表中的引用列。

外键约束的含义

外键约束创建后,将强制执行以下规则:

  • 子表中的每个记录必须引用主表中的一个现有记录。
  • 如果主表中的被引用记录被删除,则子表中的引用记录也将被删除(级联删除)。
  • 如果主表中的被引用记录被更新,则子表中的引用记录也将被更新(级联更新)。

使用外键约束的好处

使用外键约束有很多好处:

  • 确保数据完整性:外键约束可防止在子表中插入指向不存在记录的外键值。
  • 强制数据关联:外键约束强制子表中的记录与主表中的记录相关联。
  • 简化数据维护:外键约束简化了数据的维护,因为当主表中的记录被删除或更新时,子表中的记录将自动更新或删除。

注意

  • 主表中的列必须有唯一索引:外键列必须引用主表中的有唯一索引的列。
  • 外键列必须在子表中存在:外键列必须是子表中的现有列。
  • 级联删除和更新操作是可选的:可以通过指定 ON DELETE CASCADEON UPDATE CASCADE
  • parent_table ist der Haupttabellenname.
🎜child_column ist eine Fremdschlüsselspalte in der untergeordneten Tabelle. 🎜🎜parent_column ist eine Referenzspalte in der Haupttabelle. 🎜🎜🎜Bedeutung von Fremdschlüsseleinschränkungen🎜🎜Wenn eine Fremdschlüsseleinschränkung erstellt wird, werden die folgenden Regeln durchgesetzt: 🎜🎜🎜Jeder Datensatz in der untergeordneten Tabelle muss auf einen vorhandenen Datensatz in der Haupttabelle verweisen. 🎜🎜Wenn der referenzierte Datensatz in der Haupttabelle gelöscht wird, wird auch der referenzierte Datensatz in der untergeordneten Tabelle gelöscht (Kaskadenlöschung). 🎜🎜Wenn der referenzierte Datensatz in der Haupttabelle aktualisiert wird, wird auch der referenzierte Datensatz in der untergeordneten Tabelle aktualisiert (Kaskadenaktualisierung). 🎜🎜🎜Vorteile der Verwendung von Fremdschlüsseleinschränkungen🎜🎜Die Verwendung von Fremdschlüsseleinschränkungen bietet viele Vorteile: 🎜🎜🎜Gewährleistung der Datenintegrität: Fremdschlüsseleinschränkungen verhindern das Einfügen von Fremdschlüsseln in untergeordnete Tabellen, die auf verweisen Nicht vorhandener Datensatzschlüsselwert. 🎜🎜Erzwungene Datenzuordnung: Fremdschlüsseleinschränkungen erzwingen die Verknüpfung von Datensätzen in einer untergeordneten Tabelle mit Datensätzen in der Haupttabelle. 🎜🎜Vereinfachte Datenpflege: Fremdschlüsseleinschränkungen vereinfachen die Datenpflege, denn wenn ein Datensatz in der Haupttabelle gelöscht oder aktualisiert wird, wird der Datensatz in der untergeordneten Tabelle automatisch aktualisiert oder gelöscht. 🎜🎜🎜Hinweis🎜🎜🎜Spalten in der Haupttabelle müssen eindeutige Indizes haben:Fremdschlüsselspalten müssen auf Spalten in der Haupttabelle verweisen, die eindeutige Indizes haben. 🎜🎜Fremdschlüsselspalte muss in der untergeordneten Tabelle vorhanden sein: Die Fremdschlüsselspalte muss eine vorhandene Spalte in der untergeordneten Tabelle sein. 🎜🎜Kaskadierende Lösch- und Aktualisierungsvorgänge sind optional: Kaskadierende Löschvorgänge können durch Angabe der Optionen ON DELETE CASCADE und ON UPDATE CASCADE und Aktualisierungsvorgänge aktiviert werden . 🎜🎜

Das obige ist der detaillierte Inhalt vonSo erstellen Sie Fremdschlüsseleinschränkungen in MySQL. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn