Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    [Mysql] Gestione indici e chiavi Mysql

    Voglio capire bene la funzione degli indici, perchè sinceramente non è che sto capendo tanto, o meglio voglio levarmi dei dubbi

    Sono 2 giorni che Googlo, e ho visto che esistono 4 tipi di indici
    PRIMARY
    INDEX
    UNIQUE
    FULLTEXT

    Ok e fin qua ci sono, a seconda di come voglio i valori Mysql fa dei controlli.

    Quello che non capisco è più che altro come agiscono sulle select. Cioè se io faccio una chiave primaria esempio come agisce? cioè non fa più il controllo su tutti i valori? ma tiene che ne so un ordine suo?
    Esempio
    Devo ricercare nome in un tabella... lui se li sistema in ordine alfabetico e se vede che la query ricerca un nome che inizia per A lui fa la ricerca solo su quelli?
    giusto per fare un esempio

    Ora non chiedo una spiegazione precisa delle operazioni interne di Mysql, ma riuscire almeno a capire come funzionano a livello di programmazione, perchè non ho ben capito come usarle.

    Se ho capito bene, le devo fare per le operazioni WHERE e/o LIKE che uso di più no?

    Altra cosa, mi devo ancora informare in merito perchè ero preso con la ricerca degli indici... ma le chiavi esterne fanno parte degli indici? se è anche quelle vanno definite? perchè di solito io attraverso php faccio delle ricerche concatenate con la clausola WHERE, però a sto punto ho paura di "sbagliare"

  2. #2
    Utente di HTML.it
    Registrato dal
    Apr 2014
    residenza
    Genova, presenza costante a Milano
    Messaggi
    100
    Immagina di cercare sull'elenco telefonico (carteceo) Mario Rossi. Lo cerchi su due elenchi diversi. Uno ha delle linguette A, B, C... per sapere dove cominciano le varie lettere, l'altro no. Sull'elenco con le linguette lo trovi velocemente, sull'altro ci metti più tempo. Ovviamente Mario Rossi è sempre Mario Rossi, non è che diventa Ernesto Gagliardelli solo perché l'hai trovato più in fretta

  3. #3
    Ok allora è come credevo io... diciamo che mysql si crea un metodo di catalogazione suo per ricercare prima. nel FULLTEXT, invece crea indici per il testo dentro no?

    Ma le chiavi esterne non c'entrano nulla con l'indicizzazione oppure si?

  4. #4
    Utente di HTML.it
    Registrato dal
    Apr 2014
    residenza
    Genova, presenza costante a Milano
    Messaggi
    100
    Esatto, gli indici riguardano meccanismi che avvengono internamente. Vedi MySQL come un magazziniere. Tu gli dici cosa vuoi, lui se ne va, e dopo un po' torna con quello che gli hai chiesto. Se non hai problemi di prestazioni, non ti interessa sapere come l'ha trovato.

    Sì FULLTEXT serve per le ricerce "stile Google". Quelli devi usarli per forza, altrimenti MATCH ... AGAINST ... non funziona.

    No le chiavi esterne sono un discorso a parte.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.