picoSQL - Manuale di riferimento


CREATE INDEX


Sintassi:

CREATE [UNIQUE] INDEX nome-indice

ON nome-tabella

(nome-colonna [ASC|DESC] [, nome-colonna [ASC|DESC]] ...)


Scopo:

Permette la creazione di un indice su una tabella specificata. Gli indici sono importanti per migliorare le performance sul database.


Vedi anche:

DROP


Descrizione:


Questo statement crea un indice sulle colonne specificate della tabella specificata. Gli indici sono utilizzati automaticamente da picoSQL per migliorare le performance del database per quanto riguarda la ricerca di righe e per l'ordinamento delle stesse in presenza della clausola ORDER BY sia crescenti che decrescenti.


Un indice può essere creato su una tabella in qualsiasi momento, tanto se contiene dei dati quanto se è vuota.


La clausola UNIQUE assicura che nella tabella specificata non esistano due righe con valori uguali nelle colonne specificate come indice.


Il nome-indice in picoSQL non viene usato, ma deve essere fornito per compatibilità con lo standard SQL. Agli indici viene assegnato un nome convenzionale formato nel modo seguente:


nome-tabella_numero-progressivo


Il numero progressivo parte da 02 perché il numero 01 è riservato alla chiave primaria. Il nome convenzionale degli indici deve essere usato nella DROP INDEX per eliminare un indice esistente. Non rimangono mai buchi nei numeri progressivi, per cui se si cancella l'ennesimo indice, quelli successivi assumono un nuovo nome con il numero progressivo diminuito di 1.


Un indice può essere formato al massimo da 8 parti, dove con parte si intende un insieme di colonne adiacenti di tipo non nativo (CHAR, VARCHAR, NUMERIC, DATE, TIMESTAMP), e la sua occupazione può essere al massimo di 255 caratteri.


La clausola DESC, che permette di creare un indice con ordinamento decrescente, non è supportata nella release attuale.


Indice Precedente Successivo