Rumah >pangkalan data >tutorial mysql >Bagaimanakah cara saya mencipta Hubungan Utama Asing Antara Pangkalan Data dalam MySQL InnoDB?

Bagaimanakah cara saya mencipta Hubungan Utama Asing Antara Pangkalan Data dalam MySQL InnoDB?

DDD
DDDasal
2024-11-14 16:37:02567semak imbas

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

Perhubungan Utama Asing Antara Pangkalan Data dalam MySQL InnoDB

MySQL InnoDB menyediakan keupayaan untuk mewujudkan kekangan kunci asing merentas jadual yang berada dalam pangkalan data yang berbeza. Fungsi ini membolehkan anda mengekalkan integriti data apabila merujuk data daripada источников luaran.

Mencipta Kunci Asing Antara Pangkalan Data

Untuk mencipta kunci asing antara pangkalan data, nyatakan sahaja jadual sasaran dalam pangkalan data lain menggunakan nama yang layak sepenuhnya, seperti sebagai:

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

Dalam contoh ini, lain ialah nama pangkalan data lain, other_table ialah jadual sasaran, pk_column ialah kunci utama dalam jadual sasaran, dan fk_column ialah lajur kunci asing dalam my_table.

Contoh

Andaikan anda mempunyai dua pangkalan data, jualan dan pelanggan, dan anda ingin mencipta kunci asing antara pangkalan data daripada jadual pesanan dalam pangkalan data jualan kepada jadual pelanggan dalam pangkalan data pelanggan. Anda boleh melakukan ini menggunakan pernyataan SQL berikut:

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

Sekarang, sebarang rekod dalam jadual pesanan yang merujuk pelanggan yang tidak wujud dalam jadual pelanggan akan dianggap tidak sah dan tidak akan dimasukkan ke dalam pangkalan data .

Penghadan

Adalah penting untuk ambil perhatian bahawa tiada pengehadan yang didokumenkan untuk mencipta kunci asing antara pangkalan data dalam InnoDB. Walau bagaimanapun, adalah disyorkan untuk mempertimbangkan implikasi prestasi perhubungan sedemikian, terutamanya apabila pangkalan data berada pada pelayan yang berbeza.

Atas ialah kandungan terperinci Bagaimanakah cara saya mencipta Hubungan Utama Asing Antara Pangkalan Data dalam MySQL InnoDB?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn