Questo tutorial ti mostrerà come creare un indice su una tabella MySQL per tabelle sia esistenti che per.
Prima di poter eseguire query e creare indici, guardiamo alcuni concetti di indice MySQL.
Tipi di indici MySQL
MySQL supporta due tipi di indici:
MySQL crea automaticamente un indice, chiamato primario, ogni volta che creiamo una tabella con una chiave primaria. A seconda del motore del database, se la chiave primaria o unica univoca non è disponibile in una tabella, MySQL può creare una chiave nascosta sulla colonna con valori ID.
L'indice principale creato da MySQL è archiviato insieme ai dati nella stessa tabella. Altri indici che esistono all'interno di una tabella a parte l'indice primario sono noti come indici secondari.
Come aggiungere un indice a una tabella esistente
Sebbene MySQL consigli di aggiungere un indice durante la creazione della tabella, ci sono alcuni casi in cui potrebbe essere necessario aggiungere un indice a una tabella esistente, come in una colonna regolarmente accessibile.
Per aggiungere un indice a una tabella esistente, possiamo usare l'alter query.
Prendiamo un database di esempio con le tabelle come mostrato nella query seguente:
Crea database se non esiste mysql_indices;Nell'esempio sopra, MySQL creerà una chiave indice usando la colonna ID perché è specificata come la chiave primaria.
Puoi verificarlo usando la query:
Mostra l'indice dai trekking;Per creare un indice personalizzato, utilizzare l'alter query come:
Alter tabella Treks Aggiungi indice (cpt_name);Nell'esempio sopra, utilizziamo CPT_NAME come seconda chiave primaria. Per mostrare gli indici, utilizzare la query:
Se non specificato, MySQL predefinirà qualsiasi indice come b-albero. Altri tipi di indice supportati includono hash e full text.
Il tipo di indice dipenderà dal motore di archiviazione per la tabella specificata.
Per creare un indice per una colonna o un elenco di colonne, utilizziamo la query di Crea Index. Ad esempio, per creare un indice per la "Ship: Colonna, possiamo fare:
Creare indice ship_index su treks (nave);Se eseguiamo la query dell'indice dello spettacolo sulla tabella, dovremmo vedere un indice chiamato "Ship_index" sulla colonna "Ship".
Come aggiungere un indice a una nuova tabella
Il modo consigliato è quello di creare un indice o indici durante la creazione di una tabella. Per fare ciò, specificare le colonne da utilizzare come indici all'interno della query Index ().
Iniziamo lasciando cadere la tabella Treks nell'esempio precedente:
Drop table Trekks;Successivamente, ricreiamo la tabella e specifichiamo l'indice durante la creazione. Una domanda di esempio è:
Creare trekks da tavolo (Nella query di esempio sopra, aggiungiamo la colonna della nave come indice durante la creazione della tabella. Poiché l'ID è la chiave principale, MySQL lo aggiunge automaticamente come un indice.
Mostra l'indice dai trekking;Conclusione
In questo tutorial, hai imparato come aggiungere un indice a una tabella esistente, aggiungere un indice per una colonna e creare un indice durante la creazione della tabella.