Rumah >pangkalan data >tutorial mysql >Mengapa Saya Mendapat Ralat MySQL 1022 Apabila Mencipta Jadual dengan Kunci Asing?

Mengapa Saya Mendapat Ralat MySQL 1022 Apabila Mencipta Jadual dengan Kunci Asing?

Susan Sarandon
Susan Sarandonasal
2024-10-28 02:39:02249semak imbas

Why Am I Getting MySQL Error 1022 When Creating a Table with Foreign Keys?

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!

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