ホームページ >データベース >mysql チュートリアル >MySQL InnoDB 外部キーは異なるデータベースにまたがることはできますか?

MySQL InnoDB 外部キーは異なるデータベースにまたがることはできますか?

Linda Hamilton
Linda Hamiltonオリジナル
2024-11-14 13:45:021029ブラウズ

Can MySQL InnoDB Foreign Keys Span Different Databases?

別のデータベースを参照する MySQL InnoDB 外部キー

MySQL InnoDB では、異なるデータベースのテーブル間に外部キー関係を確立できます。この機能を使用すると、データベースの境界を越えて参照整合性を強制し、データの一貫性を確保できます。

メソッド:

別のデータベース内のテーブルを参照する外部キーを作成するには、次のようにします。 FOREIGN KEY 句でデータベース名に続いてテーブル名を指定するだけです。構文は次のとおりです:

ALTER TABLE your_table
ADD FOREIGN KEY (your_column) REFERENCES otherdb.othertable(other_column);

たとえば、db1 と db2 という 2 つのデータベースについて考えてみましょう。 db1 にテーブル users があり、db2 にテーブル order があるとします。次のように、orders テーブルに外部キーを確立して users テーブルを参照できます。

ALTER TABLE orders
ADD FOREIGN KEY (user_id) REFERENCES db1.users(id);

この外部キーにより、orders テーブルのすべての user_id が db1 の users テーブルに対応する ID を持つことが保証されます。

注:

外部キー関係に関係するデータベースは同じサーバー上にある必要があります。クロスサーバー外部キーは MySQL InnoDB ではサポートされていません。

以上がMySQL InnoDB 外部キーは異なるデータベースにまたがることはできますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。