MySQLProgrammazione

Indici

L’indice consente di recuperare i dati velocemente, ovviamente vanno usati consapevolmente altrimenti potremmo ridurre le performance.
Tipo di indici:

  • PRIMARY KEY, permette di distinguere univocamente ogni riga, non sono ammessi duplicati e nemmeno campi nulli;

  • UNIQUE, simile a PRIMARY KEY ma ammette campi nulli;

  • COLUMN INDEX, hanno lo scopo di velocizzare l’accesso e permettono duplicati e campi nulli;

  • FULLTEXT, accelera operazioni onerosi;

La chiave primaria si sceglie in fase di definizione della tabella; si può scegliere la partita iva, il codice fiscale o un dato univoco oppure un campo numerico incrementato automaticamente dal DBMS. Possiamo anche creare la chiave primaria successivamente alla creazione della tabella.
Se serve possiamo creare indici quando creiamo la tabella o successivamente. Su un campo stringa possiamo creare un indice sui primi ‘n’ caratteri utilizzando PREFIX INDEX.
Se vogliamo collegare due tabelle associando i campi utilizziamo il costrutto FOREIGN KEYS, si crea una relazione tra una tabella principale e altre tabelle secondarie. Ogni record delle tabelle secondarie deve far riferimento alla tabella principale e ogni operazione fatta nella tabella principale deve avere un’azione corrispondente nelle tabelle secondarie.
Le azioni possibili sono:

  • CASCADE, la cancellazione o la modifica nella tabella principale produce la stessa modifica nelle tabelle secondarie;

  • SET NULL, il campo oggetto della relazione nelle tabelle secondarie verrà impostato come NULL;

  • RESTRICT, impedisce la modifica o la cancellazione nella tabella principale;

  • NO ACTION, corrisponde a RESTRICT;

  • SET DEFAULT, operazione vietata;

Follow by Email
Facebook
Twitter
Telegram