Rumah  >  Artikel  >  pangkalan data  >  Mengapa Navicat tidak boleh menetapkan kunci asing dan menyimpannya?

Mengapa Navicat tidak boleh menetapkan kunci asing dan menyimpannya?

下次还敢
下次还敢asal
2024-04-24 00:42:16799semak imbas

Sebab kegagalan menyimpan kunci asing yang ditetapkan dalam Navicat mungkin: ketidakpadanan struktur jadual (lajur kunci asing dan jenis/panjang lajur rujukan tidak konsisten) rujukan bulat (kunci asing membentuk rujukan bulat, seperti kunci asing jadual A merujuk kepada jadual B, dan Kunci asing dalam jadual B merujuk kepada jadual A) Konflik kekangan (tetapan kunci asing akan menyebabkan konflik kekangan integriti data) Sekatan lain (bilangan kunci asing, had bilangan lajur rujukan)

Mengapa Navicat tidak boleh menetapkan kunci asing dan menyimpannya?

Simpan asing kekunci ditetapkan dalam Navicat tidak berjaya Penyelesaian

Kegagalan untuk menyimpan semasa menetapkan kunci asing dalam Navicat mungkin disebabkan oleh sebab berikut:

1 ketidakpadanan struktur jadual

Lajur kunci asing dan lajur jenis rujukan dan mesti mempunyai lajur data yang sama. panjang. Jika kedua-duanya tidak sepadan, Navicat tidak akan dapat menyimpan tetapan kunci asing.

2. Rujukan Pekeliling

Rujukan kunci asing tidak boleh membentuk rujukan bulat. Sebagai contoh, kunci asing dalam jadual A merujuk kepada jadual B, dan kunci asing dalam jadual B merujuk kepada jadual A. Ini akan menyebabkan Navicat tidak dapat menyimpan tetapan kunci asing.

3. Pelanggaran Kekangan

Jika tetapan kunci asing akan menyebabkan pelanggaran kekangan integriti data, Navicat tidak akan dapat menyimpan tetapan. Contohnya, jika terdapat rekod dalam jadual A yang merujuk rekod yang tidak wujud dalam jadual B, Navicat tidak boleh menyimpan tetapan kunci asing.

4 Had lain

Navicat juga mempunyai beberapa had semasa menetapkan kunci asing, termasuk:

  • Setiap kunci asing hanya boleh merujuk sehingga 10 lajur.
  • Setiap jadual hanya boleh mempunyai maksimum 9 kekangan kunci asing.

Penyelesaian:

  1. Semak struktur jadual: Pastikan jenis data dan panjang lajur kunci asing dan lajur rujukan adalah konsisten.
  2. Hapuskan rujukan bulat: Reka bentuk semula struktur jadual untuk mengelakkan rujukan bulat.
  3. Selesaikan isu integriti data: Pastikan semua rekod wujud dalam jadual yang berkaitan.
  4. Patuhi had: Hadkan bilangan kunci asing dan bilangan lajur yang dirujuk.
  5. Tetapkan semula kunci asing: Selepas menghapuskan masalah di atas, klik kanan jadual sasaran dan pilih "Kunci Asing" > "Kunci Asing Baru" untuk menetapkan semula kunci asing.

Atas ialah kandungan terperinci Mengapa Navicat tidak boleh menetapkan kunci asing dan menyimpannya?. 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