IPB
ЛогинПароль:

> ВНИМАНИЕ!

Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.

Наладить общение поможет, если вы подпишитесь по почте на новые темы в этом форуме.

 
 Ответить  Открыть новую тему 
> поиск по нескольким полям, БД в делфи
сообщение
Сообщение #1


Пионер
**

Группа: Пользователи
Сообщений: 54
Пол: Женский
Реальное имя: Евгения

Репутация: -  0  +


в нете везде по этоу вопросу лежит:

Код
keyfields:='name;name_1;n_dom;n_kw';
keyvalues:=VarArrayOf([combobox1.Text, combobox2.Text, edit2.Text, edit3.text]);
if dmod.qrfiz.Locate(keyfields,keyvalues,[])=false then
  dmod.qrfiz.Locate('id',id1,[]);


как объявить keyfields и keyvalues? и что делать если я не знаю сколько полей для поиска у меня будет заполнено..
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


просто человек
******

Группа: Пользователи
Сообщений: 3 641
Пол: Женский
Реальное имя: Юлия

Репутация: -  55  +


у тебя именно БД или ты так называешь типизированные файлы?


--------------------
Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Пионер
**

Группа: Пользователи
Сообщений: 54
Пол: Женский
Реальное имя: Евгения

Репутация: -  0  +


у меня именно БД
там получается DataModule2.Table1.Locate....
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Гость






Цитата
как объявить keyfields и keyvalues?

keyfields: string;
keyvalues: variant;

если ты об этом...
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5


Пионер
**

Группа: Пользователи
Сообщений: 54
Пол: Женский
Реальное имя: Евгения

Репутация: -  0  +


да это, спасибо... но у меня это все равно не сработало =(

не знаю как сделать...
у меня есть пять полей (улица, площадь, номер этажа, кол-во этажей и стоимость), могут заполнить только некоторые из них и мне нада сделать поиск только по заполненым полям..
пыталась с query сделать..
Код

Query1.SQL.Clear;
Query1.Active:=false;
Query1.SQL.Add('select * from sprav');
Query1.SQL.Add('where Opisanie like "%" ');
if Edit2.Text<>'' then Query1.SQL.Add('AND Ulica="'+edit2.text+'"');
if Edit3.Text<>'' then Query1.SQL.Add('AND Ploshad="'+edit3.text+'"');
if Edit4.Text<>'' then Query1.SQL.Add('AND Etaz='+edit4.text);
if Edit5.Text<>'' then Query1.SQL.Add('AND Kol_et="'+edit5.text+'"');
if Edit5.Text<>'' then Query1.SQL.Add('AND Cena="'+edit6.text+'"');
Query1.SQL.Add(';');
Query1.ExecSQL;
Query1.Active:=true;


тож не помогло.. потому что поля в таблице числа,а ищу строку =(
что можно исправить?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #6


Гость






Там, где значения строчные кавычки оставь, а там, где числовые - убери...
 К началу страницы 
+ Ответить 
сообщение
Сообщение #7


Пионер
**

Группа: Пользователи
Сообщений: 54
Пол: Женский
Реальное имя: Евгения

Репутация: -  0  +


спасиба! работает =) и что я тупила так >_<
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #8


Гость






Цитата(corazon @ 19.06.2007 16:15) *

спасиба! работает =) и что я тупила так >_<


Огромное вам всем спасибо! Тоже долго голову ломал. Реальна тема.
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 5.12.2020 16:36
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name