Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2005.01.16;
Скачать: [xml.tar.bz2];

Вниз

Нестрогий поиск   Найти похожие ветки 

 
able ©   (2004-12-10 20:12) [0]

Мастера, подскажите, может кто уже сталкивался с этой проблемой. Нужно провести нестрогий поиск по базе, допуская орфографические ошибки. Например пользователь ввел: "Японсие Илектроники", а в базе "Японские электроники" и поиск нашёл эту запись.
Заранее спасибо.


 
aus   (2004-12-10 20:49) [1]

Это в школе для слаборазвитых база будет работать?


 
Johnmen ©   (2004-12-10 21:48) [2]

В общем случае проблема неразрешима. Ибо фантазия при делании ошибок поистине безгранична !


 
sniknik ©   (2004-12-10 23:39) [3]

если в слове "хлеб" сделать четыре ошибки то поучится "пиво". ;о))

а потому просто игнорируй все что пользователь навводил и вываливай на любой запрос всю таблицу полностью, а вдруг он писал совсем не то что думал, получится ошибка но это наверняка ошибочно написаная любая другая запись... (серия вредные советы ;)


 
able ©   (2004-12-11 15:14) [4]

2all
Спасибо, посмеялся :)
Я хочу, чтобы программа допускала максимум одну ошибку. Мало ли что бывает)


 
P.N.P. ©   (2004-12-11 16:27) [5]

Поищи в сети реализацию функции SoundEx


 
P.N.P. ©   (2004-12-11 16:32) [6]

а, к стати вот http://me-asal.dyndns.org/access/soundex.zip


 
able ©   (2004-12-11 17:01) [7]

P.N.P. ©   (11.12.04 16:32) [6]
А как её использовать?


 
Ильичев С.А. ©   (2004-12-11 17:22) [8]

2 [5] P.N.P. © (11.12.04 16:27)

Чем же она поможет автору ветки?
У него не отдельные слова, а целые фразы.


 
P.N.P. ©   (2004-12-11 17:31) [9]

to [7]
SELECT tblNamensliste.ID, tblNamensliste.txtNachname,tblNamensliste.txtVorname FROM tblNamensliste WHERE ((SoundEx(txtNachname)=SoundEx("Schulz")));

to [8]
А причем тут целые фразы?
Что мешает убрать пробелы?


 
Ильичев С.А. ©   (2004-12-11 17:52) [10]

http://www.delphikingdom.ru/asp/viewitem.asp?catalogid=722


 
able ©   (2004-12-11 18:42) [11]

Ильичев С.А. ©   (11.12.04 17:52) [10]
А как отловить, что именно мы фильтруем?
Т.е. что сравнивать с запросом?


 
able ©   (2004-12-12 10:58) [12]

всё ещё надо..


 
sniknik ©   (2004-12-12 11:32) [13]

> А как отловить, что именно мы фильтруем?
это не отловить, это ни один провайдер не поддерживает, сам делай в событии onFilterRecord.

> Т.е. что сравнивать с запросом?
при чем запросы? если фильтр то это на клиенте фильтруется, если запрос то в условии выборки (надо то же самое условие на сервере реализовывать, что для Access скорее всего не получится), но и там и там (и в поиске про который  основном вопросе) везде это должна быть твоя реализация.


 
able ©   (2004-12-12 12:16) [14]

sniknik ©   (12.12.04 11:32) [13]

> это не отловить, это ни один провайдер не
> поддерживает, сам делай в событии onFilterRecord.

И какие параметры отлавлиать надо?



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2005.01.16;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.036 c
14-1104019328
Piter
2004-12-26 03:02
2005.01.16
Выщел update-1 для D2005


1-1104227614
AC
2004-12-28 12:53
2005.01.16
CheckListBox Как убрать переключатели у отдельных пунктов?


6-1098890522
CRACKISH
2004-10-27 19:22
2005.01.16
TTcpServer и TTcpServer из вкладки Internet


1-1104592118
E_
2005-01-01 18:08
2005.01.16
Сохранение Image


6-1098809212
Mirror
2004-10-26 20:46
2005.01.16
WININET.DLL





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский