Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.04.03;
Скачать: CL | DM;

Вниз

DBGrid   Найти похожие ветки 

 
SergeN   (2003-03-17 08:37) [0]

Очень нужен совет или напутствие...
Есть БД с полями Фамилия, Имя, Отчество, Дата рождения, Телефон, Адресс и т.д. (типа телефонного справочника).
Делаю запрос и вывожу его в DBGrid.
Вопросы:
1. Как уйти от чувствительности Query к регистру букв (например: Петров- находит, петров- не находит, а по условию поставленной задачи нужно чтоб находил)? :o)
2. Как все отобранные данные из DBGrid перекинуть в Memo (т.е. найдено 3 Петрова и данные о них нужно представить в виде
1.Петров ...
2.Петров ...
3.Петров ...)?
3. Может это всё не так делается и я "изобретаю велосипед"?

Помогите пожалуйста, запарился уже ...


 
Наталия ©   (2003-03-17 08:48) [1]

1. Upper
2. самый простой вариант - добавлять в Memo данные из Query в цикле. А для чего тебе это нужно?


 
DimonXP ©   (2003-03-17 08:48) [2]

ИСпользую запросы SQL там куча вриантов создания сложгных условий поиска


 
SergeN   (2003-03-17 08:57) [3]


> Наталия © (17.03.03 08:48)


> 1. Upper

Пожалуйста, можно по подробней...



> 2. самый простой вариант - добавлять в Memo данные из Query
> в цикле. А для чего тебе это нужно?

Как? Каким его свойством пользоваться?

Долго объяснять, но уж очень нужно в Memo ... :o)


 
Наталия ©   (2003-03-17 09:03) [4]

1.where upper(fam)="ПЕТРОВ"
2. memo1.lines.add(query1.fields("fam").asstring);


 
SergeN   (2003-03-17 09:18) [5]


> Наталия © (17.03.03 09:03)
> 1.where upper(fam)="ПЕТРОВ"

Не совсем то. Я наверное не так выразился.
Вот что я делаю

query1.close;
query1.sql.Clear;
query1.sql.Add("SELECT *");//Surname, Name, Secondname, Birthday, Tel, Adres, Workplaсe, Note
query1.sql.Add("FROM "People.db" People");
query1.sql.Add("WHERE surname like ""+edit1.text+""");
query1.open;

Мне нужно чтоб введёное в edit1 Петров, петров или ПЕТРОВ понимались однозначно как Петров.
В принципе, можно анализировать значение edit1.Text и править его как мне нужно а потом выполнять запрос. Но я всё ещё тщетно надеюсь что это можно сделать и средствами SQL. Или нет?


 
zacho ©   (2003-03-17 09:30) [6]


> query1.sql.Add("WHERE surname like ""+edit1.text+""");

Ну и сделай WHERE UPPER(surname) like ""+AnsiUpperCase(edit1.text)+"""


 
SergeN   (2003-03-17 09:42) [7]


> zacho © (17.03.03 09:30)

ОГРОМНОЕ СПАСИБО!
Тут по ходу дела возник ещё один вопрос: как узнать сколько записей нашёл Query?


 
Соловьев ©   (2003-03-17 09:48) [8]

FetchAll+RecordCount


 
SergeN   (2003-03-17 09:58) [9]

Всем спасибо! Выручили! Вроде разобрался... :))



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

Текущий архив: 2003.04.03;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.018 c
3-6336
Gregory
2003-03-14 00:39
2003.04.03
Компонент работы с БД DegysiDB


1-6472
BGV
2003-03-24 13:40
2003.04.03
Как сделать задержку по таймеру?


14-6744
CAMOBAP
2003-03-14 08:52
2003.04.03
Паскаль не работает


6-6646
glh
2003-02-11 19:38
2003.04.03
Interprocess communication - IPC


7-6809
retlion
2003-02-07 16:36
2003.04.03
Как определить физическое положение файла на диске?