Rumah > pangkalan data > tutorial mysql > Apakah perbezaan antara kunci utama mysql dan index

Apakah perbezaan antara kunci utama mysql dan index

青灯夜游
Lepaskan: 2022-01-04 15:20:34
asal
9323 orang telah melayarinya

Perbezaan: 1. Kunci utama digunakan untuk mengenal pasti secara unik atribut atau kumpulan atribut bagi satu baris dalam jadual, manakala indeks digunakan untuk mencari rekod dengan nilai tertentu dengan cepat; satu kunci utama, tetapi ia boleh mempunyai indeks berbilang calon; 3. Lajur kunci utama tidak membenarkan nilai nol, manakala lajur indeks membenarkan nilai nol 4. Kunci utama ialah kunci logik, dan indeks ialah kunci fizikal.

Apakah perbezaan antara kunci utama mysql dan index

Persekitaran pengendalian tutorial ini: sistem windows7, versi mysql8, komputer Dell G3.

Pangkalan data perhubungan bergantung pada kunci utama, yang merupakan asas kepada model fizikal pangkalan data. Kunci utama hanya mempunyai dua tujuan pada tahap fizikal:

  • Mengenal pasti baris secara unik.

  • sebagai objek yang boleh dirujuk dengan berkesan oleh kunci asing.

Kunci utama Atribut atau kumpulan atribut yang secara unik mengenal pasti baris dalam jadual. Jadual hanya boleh mempunyai satu kunci utama, tetapi boleh mempunyai berbilang indeks calon. Kunci utama selalunya membentuk kekangan integriti rujukan dengan kunci asing untuk mengelakkan ketidakkonsistenan data. Kunci utama boleh memastikan bahawa rekod adalah unik dan medan kunci utama tidak kosong Sistem pengurusan pangkalan data secara automatik menjana indeks unik untuk kunci utama, jadi kunci utama juga merupakan indeks khas.

Indeks ialah fail khas (indeks pada jadual data InnoDB ialah komponen ruang jadual). Ia mengandungi penunjuk rujukan kepada semua rekod dalam jadual data. Indeks digunakan untuk mencari rekod dengan nilai tertentu dengan cepat, terutamanya untuk kemudahan mendapatkan semula dan mempercepatkan akses.

Berikut ialah beberapa perbezaan dan hubungan antara kunci utama dan indeks.

1 Kunci utama mestilah indeks unik dan indeks unik tidak semestinya kunci utama.

Kunci utama yang dipanggil ialah atribut atau kumpulan atribut yang secara unik boleh mengenal pasti baris dalam jadual Sesuatu jadual hanya boleh mempunyai satu kunci utama, tetapi ia boleh mempunyai berbilang indeks calon. Oleh kerana kunci utama boleh mengenal pasti baris rekod secara unik, ia boleh memastikan tiada ralat akan berlaku semasa mengemas kini dan memadam data. Sebagai tambahan kepada fungsi di atas, kunci utama sering membentuk kekangan integriti rujukan dengan kunci asing untuk mengelakkan ketidakkonsistenan data. Apabila mereka bentuk pangkalan data, kunci utama memainkan peranan yang sangat penting.

Kunci primer boleh memastikan rekod itu unik dan medan kunci utama tidak kosong Sistem pengurusan pangkalan data secara automatik menjana indeks unik untuk kunci primer, jadi kunci utama juga merupakan indeks khas.

2. Boleh terdapat berbilang indeks calon dalam jadual, tetapi hanya terdapat satu kunci utama.

3 Lajur kunci utama tidak membenarkan nilai nol, manakala lajur indeks membenarkan nilai nol.

4. Indeks boleh meningkatkan kelajuan pertanyaan.

Sebenarnya, kunci utama dan indeks adalah kedua-dua kunci, tetapi kunci utama ialah kunci logik dan indeks ialah kunci fizikal, yang bermaksud bahawa kunci utama tidak sebenarnya wujud, tetapi indeks sebenarnya wujud dalam pangkalan data umumnya perlu dibuat, terutamanya untuk Untuk mengelakkan rekod yang sama dalam satu jadual, indeks secara amnya tidak perlu dibina, tetapi jika anda perlu menanyakan jadual, sebaiknya bina ia, yang boleh mempercepatkan pencarian semula.

[Cadangan berkaitan: tutorial video mysql]

Atas ialah kandungan terperinci Apakah perbezaan antara kunci utama mysql dan index. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
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