ホームページ >データベース >mysql チュートリアル >MySQL InnoDB でデータベース間の外部キー関係を作成するにはどうすればよいですか?

MySQL InnoDB でデータベース間の外部キー関係を作成するにはどうすればよいですか?

DDD
DDDオリジナル
2024-11-14 16:37:02515ブラウズ

How do I create Inter-Database Foreign Key Relationships in MySQL InnoDB?

MySQL InnoDB のデータベース間の外部キー関係

MySQL InnoDB は、異なるデータベースに存在するテーブル間で外部キー制約を確立する機能を提供します。この機能を使用すると、外部からデータを参照するときにデータの整合性を維持できます。

データベース間の外部キーの作成

データベース間の外部キーを作成するには、次のように指定するだけです。完全修飾名を使用した他のデータベースのターゲット テーブル。

ALTER TABLE my_table
ADD FOREIGN KEY (fk_column)
REFERENCES other.other_table(pk_column)

この例では、other は他のデータベースの名前、other_table はターゲット テーブル、pk_column は主キーです。ターゲット テーブル、fk_column は my_table の外部キー列です。

sales と customer という 2 つのデータベースがあり、internal データベースを作成するとします。 -database sales データベースのorders テーブルからcustomers データベースのcustomers テーブルへの外部キー。これは、次の SQL ステートメントを使用して実行できます。

ALTER TABLE sales.orders
ADD FOREIGN KEY (customer_id)
REFERENCES customers.customers(customer_id)

これで、customers テーブルに存在しない顧客を参照する、orders テーブル内のレコードは無効とみなされ、データベースに挿入されなくなります。 .

制限事項

InnoDB でのデータベース間の外部キーの作成には文書化された制限がないことに注意することが重要です。ただし、特にデータベースが異なるサーバーに存在する場合は、そのような関係によるパフォーマンスへの影響を考慮することをお勧めします。

以上がMySQL InnoDB でデータベース間の外部キー関係を作成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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