|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre habitué
![]() Inscription : octobre 2005 Messages : 641 ![]() |
Bonjour à tous,
je suis en train de développer un moteur de recherche sur des personnes, nom, prénom, coordonnées, etc... (comme un annuaire). Je viens de m'apercevoir que MyISAM géré le FULLTEXT mais pas les FOREIGN KEY et inversement avec InnoDB. Donc, j'aimerais avoir votre avis sur l'élaboration d'un p'tit moteur de recherche avec gestion (ajout, modification et suppression) des enregistrements sur 5 tables (personne, ville, société, appartenance, etc...). Normalement, il devrait y avoir plus de lecture que d'écriture. J'aurais bien aimé utiliser l'index FULLTEXT pour les requêtes (AJAX) mais également les clés étrangères pour les contraintes d'intégrités et les jointures. Qu'en pensez-vous ? MyISAM+FULLTEXT ou InnoDB+FOREIGN KEY ? Un avis là dessus ? Merci d'avance pour vos commentaires. |
|
|
00
|
|
|
#2 |
|
Membre habitué
![]() Inscription : octobre 2005 Messages : 641 ![]() |
D'après mes tests, FULLTEXT ne permet pas la recherche de semi-mots... comme un LIKE '%ris' pour trouver 'Paris'.
Etant donné que j'effectue un requête de recherche AJAX à chaque touche relachée, FULLTEXT ne me convient pas. Ou alors je ne connais pas encore l'astuce... |
|
|
00
|
|
|
#3 |
![]() ![]() ![]() Antoine DinimantConsultant en Business Intelligence Inscription : octobre 2006 Messages : 5 854 ![]() |
1/ tu peux sans problème mélanger InnoDB et MyISAM dans la même base. Donc mettre toutes tes tables en InnoDB pour profiter des clés étrangères, sauf celle qui contient les texte où rechercher (appelons-là blabla), que tu laisses en MyISAM. Une variante consiste à tout mettre en InnoDB, et d'utiliser des trigers pour que blabla mette à jour dynamiquement une copie en MyISAM.
2/ Le FULL-TEXT en mode booléen te permet de rechercher sur le début d'un mot (mais pas sur la fin). Par exemple : Code :
WHERE MATCH(Ville) AGAINST ('Par*' IN BOOLEAN MODE) Code :
WHERE Ville REGEXP '[[:<:]][[:alpha:]]+ris[[:>:]]' |
|
|
00
|
|
|
#4 |
|
Futur Membre du Club
![]() Inscription : novembre 2004 Messages : 64 ![]() |
Tu as peut etre deja regardé mais il y a des outils concu pour les recherches genre lucene.
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com