Rumah >pangkalan data >tutorial mysql >Mengapa Saya Mendapat Ralat MySQL 1022 Apabila Mencipta Jadual dengan Kunci Asing?
Ralat MySQL 1022: Membongkar Punca Punca
Mencipta jadual ialah aspek asas reka bentuk pangkalan data, tetapi kadangkala, ralat yang tidak dijangka boleh timbul. Satu ralat sedemikian ialah Ralat MySQL 1022 yang terkenal, yang sering berlaku apabila cuba mencipta jadual dengan kekunci pendua.
Dalam kes baru-baru ini, pengguna mengalami ralat ini semasa menggunakan MySQL Workbench untuk mencipta jadual 'errors_reports' . Walaupun jadual itu kelihatan sah, MySQL berkeras hati enggan mematuhinya, memetik kehadiran kunci pendua.
Cari Kunci Incriminating
Tidak dapat mengesan kunci yang menyusahkan secara visual, pengguna bersusah payah menghapuskan elemen definisi jadual, akhirnya mengasingkan puncanya: kekangan kunci asing yang merujuk jadual 'ralat'.
Kes Ingin Tahu Kunci Asing Yang Sama
Anehnya, pengguna telah menemui definisi kunci asing yang sama dalam jadual lain tanpa masalah. Walau bagaimanapun, dalam keadaan ini, MySQL enggan bertolak ansur dengan pertindihan.
Menyahkan Konflik
Penyelesaian kepada dilema yang membingungkan ini terletak pada konsep konvensyen penamaan kunci asing. Ternyata, kunci asing tidak boleh berkongsi nama yang sama dalam pangkalan data. Ini kerana MySQL menggunakan nama kunci asing untuk menentukan jadual dan lajur mana yang dirujuk. Menetapkan nama yang sama kepada berbilang kunci asing boleh menyebabkan kekeliruan dan kesamaran.
Laluan yang Lebih Jelas ke Penciptaan Jadual
Untuk menyelesaikan ralat dan berjaya mencipta 'errors_reports' jadual, pengguna melaraskan nama kunci asing yang menyinggung perasaan. Dengan memastikan nama kunci asing adalah unik, pengguna berpuas hati dengan konvensyen penamaan MySQL dan membuka jalan untuk mencipta jadual yang berjaya.
Atas ialah kandungan terperinci Mengapa Saya Mendapat Ralat MySQL 1022 Apabila Mencipta Jadual dengan Kunci Asing?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!