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

Вниз

Не срабатывает кейсоинсенситивность в tDataSet.Locate   Найти похожие ветки 

 
Семен Кевларвестов   (2008-11-05 02:28) [0]

Доброй ночи!

Есть некое приложение, в котором осуществляется поиск по открытому датасету методом Locate примерно так: TDataset.Locate("SomeField",SomeValue,[loCaseInsensitive, loPartialKey]). (При этом значение в SomeValue приводится к верхнему регистру, впрочем, это не важно т.к.к строкив датасете могут быть какие угодно). И вот такая загадочная вещь: если в строке есть буквы "ч" или "я" - не срабатывает кейсоинсенситивность.

Не подскажите ли, пожалуйста, как с этим можно бороться?


 
Anatoly Podgoretsky ©   (2008-11-05 07:43) [1]

> Семен Кевларвестов  (05.11.2008 2:28:00)  [0]

Отказаться от БДЕ


 
Vlad Oshin ©   (2008-11-05 10:06) [2]


> если в строке есть буквы "ч" или "я"

а если Ч и Я, то работает?


 
Anatoly Podgoretsky ©   (2008-11-05 10:32) [3]

> Vlad Oshin  (05.11.2008 10:06:02)  [2]

Не работает, а вот если <ч> и <Я>, то работает?


 
Vlad Oshin ©   (2008-11-05 10:41) [4]

Просто есть мысль приводить в верхний регистр, раз они такие заколдованные


 
Anatoly Podgoretsky ©   (2008-11-05 12:24) [5]

> Vlad Oshin  (05.11.2008 10:41:04)  [4]

Чем и когда и зачем портить базу?


 
Семен Кевларвестов   (2008-11-05 23:58) [6]


> Просто есть мысль приводить в верхний регистр, раз они такие
> заколдованные


А там так и сделано: идет поиск в верхнем регистре. А данные для которых поиск важен (к примеру ФИО) так в базу и вносятся, в верхнем регистре. Просто нужно было кое-что прикрутить (в частности, стал необходим поиск по другим данных, которые могут хранится и в нижнем, и в смешанном регистре) и вылезла эта особенность.


> Отказаться от БДЕ


Я правильно понимаю, что если продолжать работать через BDE - решения нет? (Убрать его никто, естественно, не даст).


 
Германн ©   (2008-11-06 02:48) [7]


> Я правильно понимаю, что если продолжать работать через
> BDE - решения нет? (Убрать его никто, естественно, не даст).
>

А Х.з. Может и есть решения. Но уверенности в них нет никакой! Уж сколько было на многих форумах примеров, но никто не смог выдать "решения с гарантией"!


 
clickmaker ©   (2008-11-06 12:58) [8]

> как с этим можно бороться

а если искать тупо перебором с AnsiStartsText, например?


 
Семен Кевларвестов   (2008-11-09 00:41) [9]


> Германн ©   (06.11.08 02:48) [7]
>
>  Уж сколько было на многих форумах примеров, но никто не
> смог выдать "решения с гарантией"!


эммм.. а можно хотя бы одну ссылку на подобную же проблему с хоть каким-то решением. В сетке искал, нашел на delphikindom две темы, но там ничего особенного нету.


> clickmaker ©   (06.11.08 12:58) [8]
>
> а если искать тупо перебором с AnsiStartsText, например?
>


так в конце концов и сделал, но не уверен что это правильно.


 
Johnmen ©   (2008-11-09 01:12) [10]

Единственный достоверный, не зависящий не от чего или кого способ, это самоличный проход по НД с необходимой проверкой. Медленнее ли он Локейта? Возможно, да. Но не более, чем на процентов 20...



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

Форум: "Начинающим";
Текущий архив: 2008.12.21;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.05 c
15-1224123146
Slider007
2008-10-16 06:12
2008.12.21
С днем рождения ! 16 октября 2008 четверг


2-1226757057
Ruzzz
2008-11-15 16:50
2008.12.21
способ получения в EAX, значение флага cf?


2-1226610677
cruiser
2008-11-14 00:11
2008.12.21
Текстовый файл и определение номера или конца строки


1-1204636982
misha_gr
2008-03-04 16:23
2008.12.21
Синхронизировать скроллинг двух TRichEdit


4-1202133118
Nil
2008-02-04 16:51
2008.12.21
Снова про прозрачность части формы





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский