Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Wyszukiwanie FULLTEXT
Forum PHP.pl > Forum > Bazy danych > MySQL
lamcpp
witam,
chciałem u siebie zrobić wyszukiwanie FULLTEXT, jednak ku mojemu zaskoczeniu mój typ tabel InnoDB(konieczny jest taki typ ze względu na to że tabele zawierają więzy integralności) nie wspiera FULLTEXTU.
I tutaj pytanie, czy nie da się tego obejść? Trochę to denerwujące, że dwa najlepsze typy tabel(InnoDB i MyISAM) wzajemnie się wykluczają.
Ewentualnie, jaki inny mechanizm wyszukiwania można zastosować (poza bardzo wolnym LIKE)?
Coś co nie będzie wymagało instalacji czegokolwiek na serwerze, bo i nie mam do niego dostępu.
Mchl
Przenieś pola wyszukiwane FULLTEKSTEM do tabel MyISAM w relacji 1-1 do tabel InnoDB. Będziesz musiał pilnować niestety integralności
vokiel
Możesz mieć jedną tabelę w MyISAM tylko z wartościami do wyszukiwania, i ją połączyć z tą oryginalną (InnoDB) po ID.

Możesz też pisać skrypt zaawansowanego szukania. Tj. rozbijanie podanej frazy po znakach takich jak spacja , . + - etc, następnie konstruowanie z tego zapytania, że jeśli było +zwrot to będzie AND like, jeśli -fraza to NOT LIKE, itd. Tyle, że przy takim rozwiązaniu zapytanie będzie bardzo obszerne, i będzie dość mocno zamulało bazę.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.