Rumah > pangkalan data > tutorial mysql > Mengapa Indeks Unik saya Gagal dengan 'Jenis Lajur Kunci Tidak Sah'?

Mengapa Indeks Unik saya Gagal dengan 'Jenis Lajur Kunci Tidak Sah'?

DDD
Lepaskan: 2024-12-27 02:25:13
asal
241 orang telah melayarinya

Why is my Unique Index Failing with

Mengalamatkan Ralat Pangkalan Data: Jenis Lajur Kunci Tidak Sah untuk Indeks

Apabila mencipta indeks unik pada jadual, anda mungkin menghadapi ralat "Lajur '[kunci]' dalam jadual '[jadual]' adalah daripada jenis yang tidak sah untuk digunakan sebagai lajur utama dalam indeks." Ralat ini biasanya berlaku apabila jenis data lajur yang ditentukan untuk indeks terlalu besar.

Menyelesaikan Isu

Punca biasa ralat ini ialah kunci indeks dengan panjang maksimum yang melebihi had yang dibenarkan. Dalam Microsoft SQL Server, panjang maksimum untuk kunci indeks ialah 900 bait.

Untuk menyelesaikan isu ini, pertimbangkan untuk mengurangkan panjang maksimum lajur kunci. Dalam kes anda, lajur kunci ditakrifkan sebagai nvarchar(maks), yang membolehkan panjang tanpa had. Untuk kunci indeks, anda dinasihatkan menggunakan jenis data terhad seperti nvarchar(450), yang memastikan panjang kunci indeks berada dalam допустимые пределы.

Berikut ialah definisi jadual yang dikemas kini dengan lajur kunci terhad kepada 450 watak:

CREATE TABLE [misc_info] (
    [id] INTEGER PRIMARY KEY IDENTITY NOT NULL, 
    [key] NVARCHAR(450) UNIQUE NOT NULL, 
    [value] NVARCHAR(MAX) NOT NULL
);
Salin selepas log masuk

Dengan membuat pelarasan ini, anda pastikan lajur kunci memenuhi keperluan saiz untuk kunci indeks, menyelesaikan ralat.

Atas ialah kandungan terperinci Mengapa Indeks Unik saya Gagal dengan 'Jenis Lajur Kunci Tidak Sah'?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan