Tipo de índice de base de datos MySQL/crear/usar combinación Uso de instrucións ALTER en MySQL

MySQLTipo de índice/Crear/Usar combo alterarMySQLuso da instrución de comandos

Índices MySQL

O establecemento do índice MySQL é moi importante para o funcionamento eficiente de MySQL, e o índice pode mellorar moito a velocidade de recuperación de MySQL.

Por exemplo, se un MySQL deseñado e indexado correctamente é un Lamborghini, entón MySQL sen deseño indexado é un triciclo humano.

O índice divídese en índice dunha soa columna e índice composto.Índice dunha soa columna, é dicir, un índice contén só unha única columna, unha táboa pode ter varios índices dunha soa columna, pero este non é un índice composto.Índice composto, é dicir, un índice contén varias columnas.

Ao crear un índice, cómpre asegurarse de que o índice é unha condición que se aplica á consulta SQL (normalmente como condición da cláusula WHERE).

De feito, o índice tamén é unha táboa, a táboa garda a chave primaria e os campos de índice e apunta aos rexistros da táboa de entidades.

Os anteriores están a falar dos beneficios do uso de índices, pero o uso excesivo de índices levará a un abuso.Polo tanto, o índice tamén terá as súas deficiencias: aínda que o índice mellora moito a velocidade de consulta, reducirá a velocidade de actualización da táboa, como INSERT, UPDATE e DELETE da táboa.Porque ao actualizar a táboa, MySQL non só garda os datos, senón que tamén garda o ficheiro de índice.

Indexando un ficheiro de índice que consome espazo no disco.


índice normal

crear índice

Este é o índice máis básico, non ten restricións.Pódese crear das seguintes formas:

CREATE INDEX indexName ON mytable(username(length)); 

Para os tipos CHAR e VARCHAR, a lonxitude pode ser inferior á lonxitude real do campo; para os tipos BLOB e TEXT, debe especificarse a lonxitude.

Modificar a estrutura da táboa (engadir índice)

ALTER table tableName ADD INDEX indexName(columnName)

Especifique directamente ao crear a táboa

CREATE TABLE mytable(  
 
ID INT NOT NULL,   
 
username VARCHAR(16) NOT NULL,  
 
INDEX [indexName] (username(length))  
 
);  

Sintaxe para soltar un índice

DROP INDEX [indexName] ON mytable; 

índice único

É semellante ao índice ordinario anterior, a diferenza é: o valor da columna do índice debe ser único, pero se permiten valores nulos.No caso dun índice composto, a combinación de valores de columna debe ser única.Pódese crear das seguintes formas:

crear índice

CREATE UNIQUE INDEX indexName ON mytable(username(length)) 

Modificar a estrutura da táboa

ALTER table mytable ADD UNIQUE [indexName] (username(length))

Especifique directamente ao crear a táboa

CREATE TABLE mytable(  
 
ID INT NOT NULL,   
 
username VARCHAR(16) NOT NULL,  
 
UNIQUE [indexName] (username(length))  
 
);  

Engade e elimina índices usando o comando ALTER

Hai catro formas de engadir un índice a unha táboa de datos:

  • ALTER TABLE nome_tbl ENGADIR CLAVE PRIMARIA (lista_columnas): Esta declaración engade unha clave primaria, o que significa que os valores do índice deben ser únicos e non poden ser NULL.
  • ALTER TABLE nome_tbl ADD UNIQUE nome_índice (lista_columna): O valor do índice creado por esta instrución debe ser único (excepto NULL, NULL pode aparecer varias veces).
  • ALTER TABLE nome_tbl ADD INDEX nome_índice (lista_columna): Engade un índice normal, o valor do índice pode aparecer varias veces.
  • ALTER TABLE nome_tbl ADD FULLTEXT nome_índice (lista_columna):A instrución especifica o índice como FULLTEXT para a indexación de texto completo.

O seguinte exemplo é engadir un índice a unha táboa.

mysql> ALTER TABLE testalter_tbl ADD INDEX (c);

Tamén pode usar a cláusula DROP do comando ALTER para soltar índices.Proba a seguinte instancia para soltar o índice:

mysql> ALTER TABLE testalter_tbl DROP INDEX c;

Engade e elimina chaves primarias mediante o comando ALTER

A chave primaria só pode actuar nunha columna. Cando engadas un índice de clave principal, cómpre asegurarte de que a chave primaria non é NULL por defecto (NON NULL).Os exemplos son os seguintes:

mysql> ALTER TABLE testalter_tbl MODIFY i INT NOT NULL;
mysql> ALTER TABLE testalter_tbl ADD PRIMARY KEY (i);

Tamén podes eliminar unha chave primaria co comando ALTER:

mysql> ALTER TABLE testalter_tbl DROP PRIMARY KEY;

Só precisa especificar a CLAVE PRIMARIA ao soltar a chave primaria, pero ao soltar un índice, debe coñecer o nome do índice.


mostrar información do índice

Podes usar o comando SHOW INDEX para listar a información de índice relevante na táboa.A información de saída pódese formatear engadindo \G.

Proba os seguintes exemplos:

mysql> SHOW INDEX FROM table_name; \G
........

Blog de Hope Chen Weiliang ( https://www.chenweiliang.com/ ) compartiu "Tipo de índice de base de datos MySQL/Crear/Usar combinación de uso da instrución ALTER en MySQL", que é útil para ti.

Benvido a compartir a ligazón deste artigo:https://www.chenweiliang.com/cwl-496.html

Benvido á canle de Telegram do blog de Chen Weiliang para recibir as últimas actualizacións.

🔔 Sexa o primeiro en obter a valiosa "Guía de uso da ferramenta de intelixencia artificial de marketing de contidos de ChatGPT" no directorio principal da canle. 🌟
📚 Esta guía contén un gran valor, 🌟Esta é unha oportunidade rara, non a perdas! ⏰⌛💨
Comparte e da like se che gusta!
O teu compartir e gústame son a nosa motivación continua!

 

发表 评论

O seu enderezo de correo electrónico non se publicará. Utilízanse os campos obrigatorios * Etiqueta

desprázate cara arriba