2009-07-15 7 views
1

J'ai utilisé la recherche plein texte mysql. Mon code est select * de uh_property WHERE correspondance (nom du champ) contre ('serach_word')Comment puis-je corriger la recherche en texte intégral pour 3 caractères?

Maintenant, lorsque je tape un mot de l'enregistrement de recherche de trois caractères ne s'affiche pas. Par exemple, j'ai un enregistrement avec le nom «eco». Lorsque je tape eco dans la zone de texte pour la recherche, aucun enregistrement n'est affiché.

J'ai trouvé que le caractère minimum pour la recherche en texte intégral est 4. Y at-il de toute façon pour résoudre ce problème?

Répondre

3

Veuillez vous reporter à Fine-Tuning MySQL Full-Text Search. Vous devez d'abord modifier ft_min_word_len (ou innodb_ft_min_token_size pour les tables InnoDB), puis reconstruire les index de recherche de texte intégral.

+0

Merci beaucoup Yuval F! J'ai vérifié le site avant et je ne peux pas le faire pour le site en direct car le serveur n'est pas pour un seul site. Une solution pour cela? – user75472

+0

Il me manque quelque chose ici. Pourriez-vous s'il vous plaît expliquer votre configuration? Avez-vous le contrôle du serveur mysql? –

+0

Oui j'ai utilisé [mysqld] ft_min_word_len = 3 et cela a fonctionné pour local. Maintenant, je dois le faire dans le serveur live. Est-ce que cela affectera le serveur ou créera un problème? Oui j'ai le contrôle pour le serveur mysql pour vivre. – user75472

Questions connexes