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 サイトの他の関連記事を参照してください。