Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Отключить проверку заглавных букв


altatr ©   (2007-12-12 15:36:00) 

Привет всем!
Такой вопрос. Имеется таблица данных. Поиск по ней выполняется с помощью SQL запросов. Примерно так:

with form1.Query1 do begin
          Close;
          SQL.Clear;
          SQL.Add('SELECT NAME, FNAME, SNAME');
          SQL.Add('FROM ":BASE:main.dbf"');
          SQL.Add('WHERE');
          SQL.Add('(NAME = "'+ f +'")');
          SQL.Add('ORDER BY NAME, FNAME, SNAME');
          Open;
        end;

В таблице фамилии (поле NAME) начинаются с Заглавной буквы поэтому при поиске приходится переменную f тоже вводить с заглавной буквы. Можно ли отключить проверку заглавных и прописных букв?


altatr   (2007-12-13 00:35:00) [1]


>Desdechado ©   (12.12.07 20:58) [11]

>WHERE Upper(name) = :F
>И построить индекс по UPPER(NAME)


Переписал строку:

SQL.Add('(UPPER (NAME) = "'+ f +'")

и работает как надо.
Спасибо.


Desdechado   (2007-12-12 20:58:00) [2]

WHERE Upper(name) = :F
И построить индекс по UPPER(NAME)


Anatoly Podgoretsky   (2007-12-12 18:55:00) [3]

> oldman  (12.12.2007 17:01:07)  [7]

И что это значит?
Клиппер?


oldman   (2007-12-12 17:12:00) [4]

Всего 12000?
Конвертни перед поиском.


altatr   (2007-12-12 17:11:00) [5]


> Я в своей проге не заморачивался с руками юзеров и все записи
> в БД (соответственно и поиск тоже) делал ТОЛЬКО большими
> буквами


База то уже набита. Больше 12000 записей. И набивается она в другой программе.


oldman   (2007-12-12 17:01:00) [6]


> Johnmen ©   (12.12.07 17:00) [6]


В сабже четко написано:
SQL.Add('FROM ":BASE:main.dbf"');


Johnmen   (2007-12-12 17:00:00) [7]


> Anatoly Podgoretsky ©   (12.12.07 16:54) [5]
> Сейчас услышишь, что dbf

Тогда пошлю в localsql.hlp для изучения встроенных ф-ий...


Anatoly Podgoretsky   (2007-12-12 16:54:00) [8]

Сейчас услышишь, что dbf


Johnmen   (2007-12-12 16:52:00) [9]

Об используемой СУБД мы должны сами догадаться?


oldman   (2007-12-12 16:46:00) [10]

Я в своей проге не заморачивался с руками юзеров и все записи в БД (соответственно и поиск тоже) делал ТОЛЬКО большими буквами.
А то ведь фамилия может быть "Петров", а может быть и "Петров-Иванов"...


altatr   (2007-12-12 16:42:00) [11]

Ну с переменной f просто, ей я присвоил значение компонента Edit1.text у которого в свою очередь в свойстве CharCase стоит ecUpperCase т.е. все пишем большими буквами. А как сделать чтобы прога видела все записи в поле NAME большими буквами?


Amoeba   (2007-12-12 15:56:00) [12]

Можно. Нужно использовать в сравнении ф-ии преобразования в верхний или нижний регистр.


Наверх

Титульная страница Поиск, карта сайта Написать письмо