Additional
dbCAP
AnyDAC
ThinDAC
NCOCI8
Topic: Поиск по индексу MySQL
[1 2 |Next ]
Поиск по индексу MySQL
Posted: 2008/02/27 23:22
 
Здравствуйте, Спасибо за компонент!
На днях попробовал выполнить поиск по индексу и столкнулся со следующей проблемой:
Добавляю индекс в Indexes компонента Table, Field присваиваю 'Name', Name присваиваю 'indName', в тексте поиска пишу if not ADTable1.FindKey(['Арбус']) then ShowMessage('Не нашел'); и все работатет, но Вот никак не могу заставить его отказаться от чувствительности к регистру... т.е. 'арбус' не находит что то надо сделать в Options? Пока результата не добился... И если есть время там есть ещё и фильтр как его применять? - ради интереса... Жду ответа... Заранее спасибо!
Re:Поиск по индексу MySQL
Posted: 2008/02/27 23:41
 
Прошу прощение за свою неграмотность оказывается необходимо в место FindKey использовать FindNearest тогда код будет выглядеть не так if not ADTable1.FindKey(['Арбус']) then ShowMessage('Не нашел'); а вот так ADTable1.FindNearest(['эАрбус']); и все будет ok но вот только зачем тогда нужен Options? Какой смысл в него вложен? Он же там не посто так? или просто так?
Re:Поиск по индексу MySQL
Posted: 2008/02/28 00:33
 
1) Для регистро независимого поиска по индексу, необходимо включить soNoCase в TADIndex.Options. Если не по всем полям индекса нужен регистро независимый поиск, то нужные поля указать в CaseInsFields.
2) FindKey производит точный поиск. FindNearest ищет либо указанное значение, если оно не найдено, то встает на первую запись с большим значением.
Re:Поиск по индексу MySQL
Posted: 2008/02/28 00:50
 
Я вроде так и делаю, но все равно не получается вот даже ScreenShoot присылаю... Может все дело в том, что в самой таблице нет такого индекса, но по идеи компоненту все равно есть он в таблице или нет...
Re:Поиск по индексу MySQL
Posted: 2008/02/28 00:51
 
Забыл ScreeShoot
Re:Поиск по индексу MySQL
Posted: 2008/02/28 01:19
 
Забыл главное ...
1) Открой файл AnyDACSourceuAD.inc.
2) Найди там строки:
{$define AnyDAC_NOLOCALE_DATA} // define, to use binary data comparision
{$define AnyDAC_NOLOCALE_META} // define, to use binary metadata comparision
И закоментируй их.
3) Перестрой приложение.
Re:Поиск по индексу MySQL
Posted: 2008/02/28 03:03
 
Нашел файл как Вы сказали, только у меня он называется daAD.inc (может это даже и не он), в папке SOURCE... Нашел эти две строчки, закоментировал, создал новый Application положил компоненты и ничего не получилось он опять ищет с учетом регистра... Даже картинку прикреплю для убедительности
Re:Поиск по индексу MySQL
Posted: 2008/02/28 03:05
 
Чтото я про них постоянно забываю
Re:Поиск по индексу MySQL
Posted: 2008/02/28 03:27
 
Картинка
Re:Поиск по индексу MySQL
Posted: 2008/02/28 03:46
 
Изменил способ комментирования получилось
// Common
{.$define AnyDAC_NOLOCALE_DATA}
{.$define AnyDAC_NOLOCALE_META}
{.$define AnyDAC_DEBUG} // define for profiling
но результата по прежнему нет...
[1 2 |Next ]