Apakah Perbezaan Antara INDEX dan KEY dalam Penciptaan Jadual MySQL?

DDD
Lepaskan: 2024-11-26 05:03:10
asal
174 orang telah melayarinya

What's the Difference Between INDEX and KEY in MySQL Table Creation?

Memahami Kesetaraan INDEX dan KEY dalam MySQL

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

  • INDEX: Indeks bukan unik yang digunakan untuk mempercepatkan pertanyaan dan meningkatkan pengambilan data kecekapan.
  • KUNCI: Sinonim untuk INDEX. Ia telah diperkenalkan dalam MySQL untuk keserasian dengan sistem pangkalan data lain.

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)
);
Salin selepas log masuk

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)
);
Salin selepas log masuk

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!

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