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

    Errore Indici Fulltext MYSQL

    Salve a tutti!
    Ho dei problemi nel creare degli indici fulltext in una tabella su MySql.
    Ho già modificato la tabello da InnoDB a MyIsam e ho controllato che tutti gli indici avessero la stessa codifica di caratteri.
    Sto tentando di creare un indice fulltex con due colonne, ma mi dà sempre l'errore 'nome_colonna cannot be a fulltext index'
    Eppure avevo fatto un test su una tabella di prova...invece su questa che dovrò usare per un sito web non funziona...avete idee a riguardo?

  2. #2
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    Posta il codice.

  3. #3
    Sto usando mysql administrator per la tabella, quindi l'interfaccia grafica...
    non sto scrivendo il codice...

  4. #4
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    Creati la tabella a manina. Nel primo post di questo thread

    http://forum.html.it/forum/showthrea...light=fulltext

    c'è un esempio e il manuale è più che esaustivo.

    http://dev.mysql.com/doc/refman/5.0/...-language.html

  5. #5
    ho anche provato a scriverlo a manina da mysql server, cercando la sintassi per aggiungere indici fulltext ad una tabella già esistente, ma dà sempre lo stesso errore.
    i campi sono di tipo varchar e text, quindi è possibile indicizzarli.
    e poi l'errore me lo da solo quando uso il campo descrizione insieme ad altri...
    descrizione è di tipo text
    se invece indicizzo descrizione da sola va tutto ok...idem se indicizzo altri due campi diversi da descrizione

  6. #6
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    Posta l'output della tabella esistente

    show create table nome_tabella

    e l'esatta sintassi che hai usato per tentare di creare l'indice.

  7. #7
    prova di risposta al forum...

  8. #8
    DROP TABLE IF EXISTS `3dtube`.`oggetti`;
    CREATE TABLE `3dtube`.`oggetti` (
    `idoggetti` int(10) unsigned NOT NULL AUTO_INCREMENT,
    `titolo` varchar(45) NOT NULL,
    `autore` varchar(45) NOT NULL,
    `descrizione` text CHARACTER SET latin1 COLLATE latin1_bin NOT NULL,
    `path` varchar(100) NOT NULL,
    `numerodownload` int(10) unsigned NOT NULL,
    `confermato` tinyint(1) NOT NULL DEFAULT '0',
    `idcategoria` int(10) unsigned NOT NULL DEFAULT '0',
    `prezzo` float NOT NULL DEFAULT '0',
    `percentuale` int(10) unsigned DEFAULT '80',
    PRIMARY KEY (`idoggetti`) USING BTREE,
    FULLTEXT KEY `full` (`descrizione`)
    ) ENGINE=MyISAM AUTO_INCREMENT=56 DEFAULT CHARSET=latin1 ROW_FORMAT=COMPRESSED;

  9. #9
    questo per aggiungere l'indice

    ALTER TABLE oggetti ADD FULLTEXT fulltext(descrizione, titolo);

    per qualsiasi campo che metto insieme a descrizione, l'errore me lo da sull'ultimo campo inserito , in questo caso su titolo....se invece mettessi descrizione per ultimo me lo da su descrizione...

  10. #10
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    Tutti i campi di un indice fulltext devono avere non solo lo stesso charset ma anche la stessa collation, quindi anche titolo va impostato come latin1_bin.

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.