Rumah  >  Artikel  >  pangkalan data  >  Mengapa Saya Mendapat Kod Ralat MySQL #1089: Kunci Awalan Salah?

Mengapa Saya Mendapat Kod Ralat MySQL #1089: Kunci Awalan Salah?

Patricia Arquette
Patricia Arquetteasal
2024-10-30 17:00:03213semak imbas

Why Am I Getting MySQL Error Code #1089: Incorrect Prefix Key?

Kod Ralat MySQL #1089: Kunci Awalan Salah

Apabila menemui kod ralat misteri #1089 daripada MySQL, seseorang mungkin bingung untuk kepentingannya. Ralat ini timbul apabila kunci awalan yang tidak sesuai ditakrifkan, terutamanya apabila cuba menggunakan awalan pada jenis data bukan rentetan atau apabila melebihi had panjang yang ditetapkan untuk bahagian kunci.

Dalam kes khusus anda, masalah yang bermasalah bahagian pertanyaan nampaknya ialah:

PRIMARY KEY (`movie_id`(3))

Dengan menyatakan (3) bersama movie_id dalam definisi kunci utama, anda secara tidak sengaja menyediakan kunci sub bahagian pada 3 bait pertama daripada lajur movie_id. Pendekatan ini hanya boleh dilaksanakan untuk jenis data rentetan, bukan integer seperti movie_id.

Untuk menyelesaikan isu ini dan menghapuskan ralat, anda harus mengubah suai definisi kunci utama seperti berikut:

PRIMARY KEY (`movie_id`)

Oleh mengetepikan akhiran (3), MySQL akan mencipta kunci utama pada keseluruhan medan movie_id tanpa sebarang sekatan panjang. Ini ialah pendekatan yang sesuai untuk jenis data integer seperti movie_id.

Atas ialah kandungan terperinci Mengapa Saya Mendapat Kod Ralat MySQL #1089: Kunci Awalan Salah?. 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