Rumah > Artikel > pangkalan data > Mengapa Saya Mendapat Ralat MySQL #1089: Kunci Awalan Salah?
Ralat MySQL #1089: Kunci Awalan Salah
Pengguna MySQL mungkin menghadapi kod ralat #1089, menunjukkan penggunaan kekunci awalan yang tidak sah. Mari kita teliti butiran ralat ini dan penyelesaiannya.
Perihalan Ralat
Mesej ralat "#1089 - Kunci awalan salah" boleh muncul apabila cuba mencipta kunci awalan pada lajur dalam jadual. Kekunci awalan direka bentuk untuk mengindeks panjang awalan lajur rentetan tertentu, membolehkan carian lebih pantas pada awalan tersebut.
Memahami Kekunci Awalan
Kunci awalan berguna untuk mengoptimumkan carian pada lajur yang mempunyai awalan biasa, seperti nama atau alamat. Dalam contoh yang disediakan:
`
<br>PRIMER KUNCI (movie_id(3))<br>`
niatnya adalah untuk mencipta kekunci awalan pada 3 bait pertama lajur movie_id. Walau bagaimanapun, sintaks ini tidak betul untuk kunci utama, kerana ia hanya digunakan pada indeks.
Penyelesaian
Untuk membetulkan ralat, alih keluar spesifikasi panjang daripada definisi kunci utama :
`
KUNCI UTAMA (movie_id)
`
Ini akan mencipta kunci utama standard pada keseluruhan lajur movie_id. Kekunci utama adalah penting untuk mengenal pasti rekod secara unik dalam jadual dan menguatkuasakan integriti rujukan.
Nota: Perlu diingat bahawa penggunaan kekunci awalan pada kunci primer biasanya tidak disyorkan, kerana ia boleh mengakibatkan kesesakan prestasi. Kekunci awalan lebih sesuai untuk definisi indeks, di mana ia boleh meningkatkan prestasi carian pada awalan khusus lajur rentetan.
Atas ialah kandungan terperinci Mengapa Saya Mendapat Ralat MySQL #1089: Kunci Awalan Salah?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!