Artikel Direktori
MySQLjinis indeks / nggawe / nggunakake combo ngganti ingMySQLpanggunaan statement printah
indeks MySQL
Panyiapan indeks MySQL iku penting banget kanggo operasi efisien MySQL, lan indeks bisa nemen nambah kacepetan pengangkatan MySQL.
Contone, yen MySQL kanthi desain sing cukup lan nggunakake indeks minangka Lamborghini, banjur MySQL tanpa indeks lan indeks minangka becak manungsa.
Indeks kasebut dipérang dadi indeks kolom tunggal lan indeks gabungan.Indeks kolom tunggal, yaiku indeks mung ngemot siji kolom, tabel bisa duwe indeks kolom siji, nanging iki dudu indeks gabungan.Indeks komposit, yaiku indeks ngemot pirang-pirang kolom.
Nalika nggawe indeks, sampeyan kudu nggawe manawa indeks minangka kondisi sing ditrapake kanggo query SQL (biasane minangka kondisi klausa WHERE).
Ing kasunyatan, indeks uga tabel, tabel nyimpen kunci utami lan kolom indeks, lan nuduhake cathetan ing tabel entitas.
Ing ndhuwur kabeh babagan keuntungan nggunakake indeks, nanging panggunaan indeks sing berlebihan bakal nyebabake penyalahgunaan.Mulane, indeks kasebut uga bakal duwe kekurangan: sanajan indeks kasebut ningkatake kacepetan pitakon, nanging bakal nyuda kacepetan nganyari tabel, kayata INSERT, UPDATE lan DELETE ing meja.Amarga nalika nganyari tabel, MySQL ora mung nyimpen data, nanging uga nyimpen file indeks.
Ngindeks file indeks sing nggunakake spasi disk.
indeks normal
nggawe indeks
Iki minangka indeks paling dhasar, ora ana watesan.Bisa digawe kanthi cara ing ngisor iki:
CREATE INDEX indexName ON mytable(username(length));
Kanggo jinis CHAR lan VARCHAR, dawane bisa kurang saka dawa lapangan sing nyata; kanggo jinis BLOB lan TEXT, dawane kudu ditemtokake.
Ngowahi struktur tabel (tambah indeks)
ALTER table tableName ADD INDEX indexName(columnName)
Nemtokake langsung nalika nggawe tabel
CREATE TABLE mytable( ID INT NOT NULL, username VARCHAR(16) NOT NULL, INDEX [indexName] (username(length)) );
Sintaks kanggo nyelehake indeks
DROP INDEX [indexName] ON mytable;
indeks unik
Iku padha karo indeks biasa sadurunge, bedane yaiku: nilai kolom indeks kudu unik, nanging nilai null diidini.Ing kasus indeks komposit, kombinasi nilai kolom kudu unik.Bisa digawe kanthi cara ing ngisor iki:
nggawe indeks
CREATE UNIQUE INDEX indexName ON mytable(username(length))
Ngowahi struktur tabel
ALTER table mytable ADD UNIQUE [indexName] (username(length))
Nemtokake langsung nalika nggawe tabel
CREATE TABLE mytable( ID INT NOT NULL, username VARCHAR(16) NOT NULL, UNIQUE [indexName] (username(length)) );
Nambah lan mbusak indeks nggunakake printah ALTER
Ana papat cara kanggo nambah indeks menyang tabel data:
- ALTER TABLE tbl_name ADD PRIMARY KEY (column_list): Pernyataan iki nambah kunci utama, tegese nilai indeks kudu unik lan ora bisa NULL.
- ALTER TABLE tbl_name TAMBAHKAN UNIK index_name (column_list): Nilai indeks sing digawe dening statement iki kudu unik (kajaba NULL, NULL bisa katon kaping pirang-pirang).
- ALTER TABLE tbl_name TAMBAHKAN INDEX index_name (column_list): Tambah indeks normal, nilai indeks bisa katon kaping pirang-pirang.
- ALTER TABLE tbl_name TAMBAHKAN FULLTEXT index_name (column_list):Pranyatan kasebut nemtokake indeks minangka FULLTEXT kanggo indeksasi teks lengkap.
Conto ing ngisor iki kanggo nambah indeks menyang tabel.
mysql> ALTER TABLE testalter_tbl ADD INDEX (c);
Sampeyan uga bisa nggunakake klausa DROP ing printah ALTER kanggo nyelehake indeks.Coba conto ing ngisor iki kanggo nyelehake indeks:
mysql> ALTER TABLE testalter_tbl DROP INDEX c;
Nambah lan mbusak kunci utama nggunakake printah ALTER
Tombol utami mung bisa tumindak ing kolom siji. Nalika nambah indeks kunci primer, sampeyan kudu mesthekake yen kunci utama ora NULL minangka standar (NOT NULL).Tuladhane kaya ing ngisor iki:
mysql> ALTER TABLE testalter_tbl MODIFY i INT NOT NULL; mysql> ALTER TABLE testalter_tbl ADD PRIMARY KEY (i);
Sampeyan uga bisa mbusak kunci utama kanthi printah ALTER:
mysql> ALTER TABLE testalter_tbl DROP PRIMARY KEY;
Sampeyan mung kudu nemtokake KUNCI PRIMARY nalika ngeculake kunci utama, nanging nalika ngeculake indeks, sampeyan kudu ngerti jeneng indeks kasebut.
nuduhake informasi indeks
Sampeyan bisa nggunakake printah SHOW INDEX kanggo dhaptar informasi indeks sing cocog ing tabel.Informasi output bisa diformat kanthi nambah \G.
Coba conto ing ngisor iki:
mysql> SHOW INDEX FROM table_name; \G ........
Blog Hope Chen Weiliang ( https://www.chenweiliang.com/ ) nuduhake "Jinis Indeks Database MySQL / Gawe / Gunakake Kombinasi ALTER Statement Usage in MySQL", sing migunani kanggo sampeyan.
Sugeng rawuh kanggo nuduhake link artikel iki:https://www.chenweiliang.com/cwl-496.html
Sugeng rawuh ing saluran Telegram blog Chen Weiliang kanggo entuk update paling anyar!
📚 Pandhuan iki ngemot nilai gedhe, 🌟Iki minangka kesempatan langka, aja kantun! ⏰⌛💨
Share lan seneng yen sampeyan seneng!
Nuduhake lan seneng sampeyan minangka motivasi terus-terusan!