![]() |
|
|
![]()
|
|
| Bes |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 806 Регистрация: 8.12.2004 Репутация: 2 Всего: 7 |
Здрасте, господа.
Где работаю: Д6 ADO dbf Проблема: пишу запрос с like однако результат оказывается чувствительным к регистру т.е. результат на запрос 'aSdFgH' и 'AsDfGh' разные, а д.б. одинаковые как при работе со скул-сервером. Заранее благодарен. |
|||
|
||||
| Vit |
|
|||
![]() Vitaly Nevzorov ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 10964 Регистрация: 25.3.2002 Где: Chicago Репутация: 14 Всего: 207 |
Если сервер работает в Case sensitive то используйте конвертацию строк в большие буквы при сравнении
-------------------- With the best wishes, Vit I have done so much with so little for so long that I am now qualified to do anything with nothing Самый большой Delphi FAQ на русском языке здесь: www.drkb.ru |
|||
|
||||
| Bes |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 806 Регистрация: 8.12.2004 Репутация: 2 Всего: 7 |
Vit: я пробовал что-то подобное - не получается т.е. параметр-то переделать не проблема, а как запрос-то к верхним буквам привести?
Да, еще: слово "сервер"...? Я работаю просто с одним дбф-фалйом - никакого сервера не подразумевается или я не прав? Может можно просто отключить это св-во, т.к. при работе MSSQL2000 такой проблемы не возникало.... :-( |
|||
|
||||
| Vit |
|
|||
![]() Vitaly Nevzorov ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 10964 Регистрация: 25.3.2002 Где: Chicago Репутация: 14 Всего: 207 |
Не знаю синтаксис dbf провайдера, чтото типа
только конкретное название функции upper посмотри в справочнике по твоему варианту sql -------------------- With the best wishes, Vit I have done so much with so little for so long that I am now qualified to do anything with nothing Самый большой Delphi FAQ на русском языке здесь: www.drkb.ru |
|||
|
||||
| Bes |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 806 Регистрация: 8.12.2004 Репутация: 2 Всего: 7 |
Спасибо, я попробую, но дело действительно может быть в особенностях синтаксиса, а где бы можно посмотреть такие справочники?
Проверил: запрос такой: select * from upper(catalog) where name like '%AV%' на что она мне и отвечает: [Microsoft][Драйвер ODBC dBase] Ошибка синтаксиса в предложении FROM. :-( Это сообщение отредактировал(а) Bes - 30.12.2004, 07:57 |
|||
|
||||
| Dimich |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 247 Регистрация: 25.8.2004 Где: Брянск Репутация: 3 Всего: 7 |
надо так: select * from catalog where upper(name) like '%AV%' --------------------
Не работает - исправь, работает - не трогай!!! |
|||
|
||||
| Vit |
|
||||
![]() Vitaly Nevzorov ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 10964 Регистрация: 25.3.2002 Где: Chicago Репутация: 14 Всего: 207 |
Посмотри внимательно на мой пример
и на то что ты сделал:
Зачем имя таблицы надо переводить в вверхний регистр? -------------------- With the best wishes, Vit I have done so much with so little for so long that I am now qualified to do anything with nothing Самый большой Delphi FAQ на русском языке здесь: www.drkb.ru |
||||
|
|||||
| Bes |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 806 Регистрация: 8.12.2004 Репутация: 2 Всего: 7 |
Блин, точно же - уже значит крыша едет. :-)
Признаюсь. глупо и очевидно - глаз замылился- не туда воткнул. :-( Попробовал - все равно не работает, пишет. [Microsoft][Драйвер ODBC dBase] Неопределенная функция upper в выражении. Я же помню, что не работало. :-( |
|||
|
||||
| Bes |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 806 Регистрация: 8.12.2004 Репутация: 2 Всего: 7 |
Урра!!!! Методом научного тыка, косвенной информации и аналогий нашел скул функцию для дбф Lcase - все работает. Всем спасибо. :-)
|
|||
|
||||
| Dimich |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 247 Регистрация: 25.8.2004 Где: Брянск Репутация: 3 Всего: 7 |
Немного опоздал правда, но действительно различия оказались в диалектах SQL
в данном случае аналоги функций Upper() и Lower() есть UCase() и LCase() --------------------
Не работает - исправь, работает - не трогай!!! |
|||
|
||||
| Bes |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 806 Регистрация: 8.12.2004 Репутация: 2 Всего: 7 |
Ага, все равно спасибо за беспокойство. :-)
|
|||
|
||||
![]()
|
| Правила форума "Delphi: Базы данных и репортинг" | |
|
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами Обязательно указание: 1. Базы данных (Paradox, Oracle и т.п.) 2. Способа доступа (ADO, BDE и т.д.)
FAQ раздела лежит здесь! Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |