Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1

    [mysql] errore su indice full text

    ciao a tutti, da un po' che leggo gli articoli e le guide di questo sito ma ho ancora un problema che non riesco a risolvere.
    ho creato un db per il mio sito e una delle tabelle dovrebbe contenere due campi, un campo id (chiave primaria che fa riferimento ad un'altra tabella con le informazioni personali di ogni utente) e un campo contenente un testo (lungo al massimo 5000 caratteri); un testo per ogni utente.
    ora vorrei creare un indice full text sul campo contenente i testi in modo da poter fare una ricerca per parole chiave e restituire, tramite gli id corrispondenti, i dati degli utenti (che risiedono in un'altra cartella) e il testo stesso.

    il problema che non riesco a costruire questo indice sul campo "testo", ho impostato il tipo del campo su mediumtext, poich varchar sarebbe troppo corto per 5000 caratteri, ma se imposto l'indice come full text mysql mi da l'errore:
    #1170 - BLOB/TEXT column 'testo' used in key specification without a key length.

    anche se imposto la key lenght l'errore rimane.

    l'errore dov'?
    grazie
    matteo

  2. #2
    Usi una tabella MyISAM ?
    PHP LEARN - Guide, tutorial e articoli sempre aggiornati
    NUOVO: standardLib; il potente framework PHP ora disponibile
    *******************************************
    Scarica oggi la tua copia di MtxEventManager

  3. #3

  4. #4
    si, sto usando MyIsam, ma per connettere le varie tabelle una all'altra non dovrei usare InnoDb?
    comunque ho provato con entrambe e il problema sembra risiedere altrove, poich l'errore sempre lo stesso.

    ----------------------------
    CREATE TABLE `prova`.`tab_testo` (
    `id` INT( 5 ) NOT NULL AUTO_INCREMENT PRIMARY KEY ,
    `testo` MEDIUMTEXT( 100 ) NOT NULL ,
    INDEX ( `testo` ) ,
    FULLTEXT (
    `testo`
    )
    ) ENGINE = MYISAM
    -----------------------------

    #1170 - BLOB/TEXT column 'testo' used in key specification without a key length

  5. #5
    La versione di MySql?
    PHP LEARN - Guide, tutorial e articoli sempre aggiornati
    NUOVO: standardLib; il potente framework PHP ora disponibile
    *******************************************
    Scarica oggi la tua copia di MtxEventManager

  6. #6
    `testo` MEDIUMTEXT( 100 ) NOT NULL

    il problema persiste qualunque valore inserisca in mediumtext, anche se non metto alcun valore.
    il campo id viene creato senza problemi, ed una primary key, me per il campo "testo" le ho provate tutte..
    da cosa pu dipendere?

  7. #7
    mysql 5.0

  8. #8
    CREATE TABLE `prova`.`tab_testo` (
    `id` INT( 5 ) NOT NULL AUTO_INCREMENT PRIMARY KEY ,
    `testo` MEDIUMTEXT NOT NULL ,
    FULLTEXT (
    `testo`
    )
    ) ENGINE = MYISAM

  9. #9
    grazie

    avevo usato phpmyadmin e cliccato su un indice quando gi avevo attivato l'opzione full text.

    il problema risolto.

    sempre meglio scrivere il codice piuttosto che cliccare pulsanti e tabelle, queste interfacce confondono le idee hehehe

    a presto


  10. #10
    scusami ancora filippo.toso,
    ma se uso MYISAM avr problemi con le foreign keys, e io ho tre tabelle differenti che devono comunicare l'una con l'altra. come faccio? innodb mi permette di usare le chiavi ma non supporta full text..

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 © 2020 vBulletin Solutions, Inc. All rights reserved.