Rechercher : dans
Par :

Indexation sur champs TEXT avec MySQL

Dernière réponse le 15 oct 2007 à 18:00:17 Bobinours, le 29 nov 2001 à 18:32:17 
 Signaler ce message aux modérateurs

J'ai une petite question pour connaisseur.
J'utilise PhpMyAdmin 2.2.0rc4 et MySQL v2.23.40.

J'ai un champ "Contenu" défini comme ceci:

Champ: Contenu
Type: TEXT
Attributs:
Null: not null
Défaut:
Extra:

Lorsque j'essai de cliquer sur le lien "Index", voici le message d'erreur qui apparait:

ALTER TABLE `forum` ADD INDEX(`contenu`)
MySQL a répondu: BLOB column 'contenu' used in key specification without a key length

J'ai essayé d'ajouter une longueur à ce champ (16 ou 65535 -- je ne connais pas l'unité de longueur), mais rien n'y fait.

Comment puis-je ajouter un index sur ce champs.

Sur le site officiel il est dit:
"You can have indexes on BLOB and TEXT columns with MySQL Version 3.23.2 and newer. Older versions of MySQL did not support this."
Mais ma version est supérieur.

Merci pour toute information.

-= Bobinours =-

1

Tim the enchanter, le 30 nov 2001 à 14:32:07

Il faut définir la longueur de l'index après le nom du champ.
Par exemple au lieu de contenu, tu mets contenu (10)

Fred

Répondre à Tim the enchanter

2

Bobinours, le 2 déc 2001 à 19:34:15

Et supposons que je veuille le faire sur tout le texte ?
contenu(10000) ?

PS: c'est pour un moteur de recherche sur un forum.
(Si vous avez de meilleures idées ?)

PSS: Jeff t'as interêt à me trouver une solution ou me dire comment t'as fait ;o)

-= Bobinours =-

Répondre à Bobinours

3

 cyb, le 15 oct 2007 à 18:00:17

Fulltext :) Ah ouais mais je sais pas si tu peux avec ta version mysql...

Répondre à cyb