Apabila mencipta jadual dalam MySQL, anda boleh menemui dua istilah untuk mengindeks data: INDEX dan KEY. Walaupun kedua-dua istilah ini mempunyai tujuan yang sama, terdapat perbezaan yang ketara dalam penggunaannya.
Definisi INDEX dan KEY
Penggunaan dalam Cipta Pernyataan Jadual
Dalam penyataan Cipta Jadual, anda boleh menggunakan INDEX atau KEY secara bergantian . Sebagai contoh, dua pernyataan berikut adalah bersamaan:
CREATE TABLE tasks ( task_id INT UNSIGNED NOT NULL AUTO_INCREMENT, parent_id INT UNSIGNED NOT NULL DEFAULT 0, task VARCHAR(100) NOT NULL, PRIMARY KEY (task_id), INDEX parent (parent_id) ); CREATE TABLE orders ( order_id INT UNSIGNED NOT NULL AUTO_INCREMENT, KEY order_date (order_date) );
Indeks Unik lwn. Bukan Unik
Walaupun kedua-dua INDEX dan KEY boleh mencipta indeks bukan unik, adalah penting untuk ambil perhatian bahawa KUNCI PRIMER adalah unik mengikut definisi. Ini bermakna bahawa nilai dalam lajur PRIMARY KEY secara unik mengenal pasti setiap baris dalam jadual. INDEX dan KEY, sebaliknya, membenarkan nilai pendua.
Kunci Utama sebagai KEY
Dalam MySQL, anda boleh mentakrifkan KUNCI PRIMER menggunakan kata kunci KEY. Walau bagaimanapun, adalah disyorkan untuk menggunakan kata kunci PRIMARY KEY secara eksplisit untuk mengelakkan kekeliruan. Contohnya:
CREATE TABLE customers ( customer_id INT UNSIGNED NOT NULL AUTO_INCREMENT, name VARCHAR(100) NOT NULL, PRIMARY KEY (customer_id) );
Syor
Walaupun KEY dan INDEX adalah sinonim dalam MySQL, ia biasanya disyorkan untuk menggunakan INDEX kerana ia sejajar dengan standard ISO SQL dan bertambah baik mudah alih.
Atas ialah kandungan terperinci Apakah Perbezaan Antara INDEX dan KEY dalam Penciptaan Jadual MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!