Claudiogarau.it :: Tutorials & Scripts, PHP, Linux and more. :: Mappa del sito
Tutorials & Scripts, PHP, Linux and more.

Home :: Php :: Indice Php

Creazione di un indice FULL TEXT in una tabella MySQL

Inserito il: 05-09-2006


Le ricerche FULL TEXT sono disponibili in MySQL per le tabelle MyIsam (MySQL Indexed Sequential Access Method). Secondo questo metodo, i dati vengono suddivisi in record composti da campi a lunghezza fissa; ogni record è immagazzinato in sequenza e ai record si riferisce un set di tabelle hash denominate indici destinate a contenere i puntatori ai record; in questo modo ogni record verà estratto senza dover cercare in tutto l'insieme di dati.

Esistono due procedure per creare un indice FULL TEXT: la prima è quella di inserire l'indice al momento della creazione della tabella; la seconda è quella di alterare una tabella già creata inserendo il nuovo indice in un secondo momento.

Vediamo il primo caso, creeremo la classica tabella per un news manager completa di titolo, descrizione, autore e data delle varie news:
CREATE TABLE news(
id INT NOT NULL AUTO_INCREMENT,
autore VARCHAR(100) NULL,
titolo VARCHAR(250) NULL,
descrizione TEXT NULL,
data DATE NOT NULL,
PRIMARY KEY(id),
FULLTEXT INDEX news_full(titolo, descrizione),
INDEX news_autore(autore)
);
Come si avrà modo di notare, l'indice FULL TEXT è stato posto soltanto per i campi relativi al titolo e alla descrizione delle news, plausibilmente i due campi interessati all'azione di ricerca.

Naturalmente nulla ci vieta di estendere l'indice anche ad altri campi, se per esempio il nostro database è destinato a conservare i record di un blog potremmo aver interesse a svolgere una ricerca anche tra i commenti degli utenti ai diversi articoli.

Se invece la nostra tabella dovesse essere preesistente e priva di indici FULL TEXT, allora potremo sempre aggiungere questi ultimi attraverso due semplici comandi SQL:
ALTER TABLE news
ADD FULLTEXT full (titolo, descrizione)
ALTER TABLE inizializza la procedura di alterazione della tabella in oggetto, mentre ADD FULLTEXT crea un indice FULL TEXT con il nome arbitrario indicato sui campi che gli vengono passati come parametri.

Attenzione: questo articolo è stato concesso in esclusiva per la pubblicazione a Mrwebmaster.it; ne è vietata la riproduzione,
anche parziale, senza l'esplicito consenso dell'autore e della redazione di Mrwebmaster.it.


Indice Php
Apache (19)
CGI (11)
Java (12)
Jsp (16)
Linux (18)
Manuali (6)
Perl (12)
PostgreSQL (12)
Tomcat (10)
Unix (12)
Libri (0)
Forum



Incolonnamento dei records MySQL, ordinamento orizzontale e verticale
In un precedente articolo avevamo già affrontato il discorso riguardante l'impaginazione per colonne dei records estratti da MySQL. Ora... Leggi l'articolo


Corsi per Webmaster, Web Designer, Programmatori, Grafici e Sistemisti

Mrwcorsi.it
Mrwebmaster.it
4 You Gratis.it
Ceptive.it
Giochi Gratis
Pierotofy.it
Giornale Webmaster
Manuali
Morpheusweb.it
SEO Directory
Visual designer
Forum per Webmaster




Pagina caricata in 0.0001 secondi. | Per informazioni | ©CG di Claudio Garau P.IVA 03219430927 RSS