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

> ВНИМАНИЕ!

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

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

 
 Ответить  Открыть новую тему 
> Поиск в БД, Нужна помощь!
сообщение
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 40
Пол: Мужской
Реальное имя: САША

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


Есть БД PARADOX нада сделать так чтобы когда водиш любое слова в edit оно его искала в таблице в колонке Название и потом выводила результат поиска ! Если кто знает подскажите !
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Профи
****

Группа: Пользователи
Сообщений: 865
Пол: Мужской
Реальное имя: Вячеслав

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


Table1.IndexName:='';// имя индексного файла (по полю название)
if table1.FindKey([edit1.Text]) then begin
...
end
else ShowMessage('не найдено!');
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Новичок
*

Группа: Пользователи
Сообщений: 40
Пол: Мужской
Реальное имя: САША

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


Спасибо вот теперь такой вопрос как сделать так чтобы когда нашло выводила всю строку в DBGRID и если нашло не раз водимае слово то выводила все строчки в которых есть это слова ! Помогите пожалуйсто если не трудно просто мне это для курсача нада я всё сделал тока с поискам не как не могу додуматься !
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Профи
****

Группа: Пользователи
Сообщений: 865
Пол: Мужской
Реальное имя: Вячеслав

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


Попробуй сделать фильтрацию
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5


Новичок
*

Группа: Пользователи
Сообщений: 40
Пол: Мужской
Реальное имя: САША

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


Спасибо когнечно за совет но я попрошу помогите пожалуйсто написать весь код просто я вообще поиск не понимаю пытался как-то разобраться но всё равно не чево не понял . Если вам не трудно напишите код полностью.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #6


Профи
****

Группа: Пользователи
Сообщений: 865
Пол: Мужской
Реальное имя: Вячеслав

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


procedure TForm3.Button8Click(Sender: TObject);
var
s:string;
begin
s:=Edit1.Text;
if CheckBox1.Checked then // это ПОЛНОЕ СОВПАДЕНИЕ ИЛИ ЧАСТИЧНОЕ
edit1.Text:='Adres='+chr(39)+edit1.Text+chr(39) //адрес это мое поле было
else edit1.Text:='Adres='+chr(39)+edit1.Text+'*'+chr(39);
table1.Filtered:=True;
Table1.Filter:=edit1.Text;
edit1.Text:=s;
end;
Это пример из моей проги по фильтрации по полю АДРЕС
Для фильтрации по нескольким полям сам не знаю как сделать(
Что не понятно?

Сообщение отредактировано: Client -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #7


Новичок
*

Группа: Пользователи
Сообщений: 40
Пол: Мужской
Реальное имя: САША

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


Цитата(Client @ 2.06.2009 21:54) *

procedure TForm3.Button8Click(Sender: TObject);
var
s:string;
begin
s:=Edit1.Text;
if CheckBox1.Checked then // это ПОЛНОЕ СОВПАДЕНИЕ ИЛИ ЧАСТИЧНОЕ
edit1.Text:='Adres='+chr(39)+edit1.Text+chr(39) //адрес это мое поле было
else edit1.Text:='Adres='+chr(39)+edit1.Text+'*'+chr(39);
table1.Filtered:=True;
Table1.Filter:=edit1.Text;
edit1.Text:=s;
end;
Это пример из моей проги по фильтрации по полю АДРЕС
Для фильтрации по нескольким полям сам не знаю как сделать(
Что не понятно?

Спасибо,Попробую сделать!

Сообщение отредактировано: BAEVIK -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #8


Новичок
*

Группа: Пользователи
Сообщений: 40
Пол: Мужской
Реальное имя: САША

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


ДА чёт я делал не фига не получилась, может поможете я код вставил на кнопку всё проходит вроде без ошибак но когда вожу слова или букву кидает ошибку и всё ! Я вот за архивировал курсач помагите если можете и пожалуйсто если не трудно напишите в чём ошибка !

Сообщение отредактировано: BAEVIK -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #9


Профи
****

Группа: Пользователи
Сообщений: 865
Пол: Мужской
Реальное имя: Вячеслав

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


Ни одной строки кода твоего не видно,чтоб говорить
Цитата
ДА чёт я делал не фига не получилась
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #10


Новичок
*

Группа: Пользователи
Сообщений: 40
Пол: Мужской
Реальное имя: САША

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


Вот я так попробывал сделать !
procedure TForm3.Button1Click(Sender: TObject); 
var s:string;
begin Table1.IndexName:='Name';// имя индексного файла (по полю название)
if table1.FindKey([edit1.Text]) then begin
s:=Edit1.Text;
if CheckBox1.Checked then // это ПОЛНОЕ СОВПАДЕНИЕ ИЛИ ЧАСТИЧНОЕ edit1.Text:='Name='+chr(39)+edit1.Text+chr(39) //name это мое поле было
else edit1.Text:='Name='+chr(39)+edit1.Text+'*'+chr(39);
table1.Filtered:=True;
Table1.Filter:=edit1.Text;
edit1.Text:=s; end; end;

Когда запускаю всё без ошибак но потом когда в едит вожу букву то вот такое получаеться на скринах сматри !
Прикрепленное изображениеПрикрепленное изображение

Сообщение отредактировано: BAEVIK -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #11


Профи
****

Группа: Пользователи
Сообщений: 865
Пол: Мужской
Реальное имя: Вячеслав

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


Table1.IndexName:='Name';// имя индексного файла (по полю название)
Это я пример привел. Для фильтрации не нужен индексный файл
procedure TForm3.Button1Click(Sender: TObject); 
var s:string;
begin
edit1.Text:='Name='+chr(39)+edit1.Text+chr(39) //ВМЕСТО NAME= пишешь СВОЕ ПОЛЕ и знак =
table1.Filtered:=True;
Table1.Filter:=edit1.Text;
edit1.Text:=s;
end;

На скрине не видно чтоб дбгрид был привязан к таблице
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #12


Новичок
*

Группа: Пользователи
Сообщений: 40
Пол: Мужской
Реальное имя: САША

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


Цитата(Client @ 3.06.2009 13:21) *

Table1.IndexName:='Name';// имя индексного файла (по полю название)
Это я пример привел. Для фильтрации не нужен индексный файл
procedure TForm3.Button1Click(Sender: TObject); 
var s:string;
begin
edit1.Text:='Name='+chr(39)+edit1.Text+chr(39) //ВМЕСТО NAME= пишешь СВОЕ ПОЛЕ и знак =
table1.Filtered:=True;
Table1.Filter:=edit1.Text;
edit1.Text:=s;
end;

На скрине не видно чтоб дбгрид был привязан к таблице


У меня поле называеться Name дбгрид забыл привезать счас ! !

Добавлено через 11 мин.
Всё проходит без ошибак только вот один вопрост не чево не показывает ? Нада писать полностью название я писал одно слова !
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #13


Профи
****

Группа: Пользователи
Сообщений: 865
Пол: Мужской
Реальное имя: Вячеслав

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


Поиск идет по слову целиком, а не по части слова. Для этого и нужна была *
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #14


Новичок
*

Группа: Пользователи
Сообщений: 40
Пол: Мужской
Реальное имя: САША

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


Поиск может идёт но не чево не показывает на скринах показана 1 скрин это типа запуск проги 2 скрин это вот слова которое ищём 3 скрин это что получается после нажатия на кнопку поиска !
1)Прикрепленное изображение
2)Прикрепленное изображение
3)Прикрепленное изображение
А это текс который вставлен на кнопку поиска !

procedure TForm3.Button1Click(Sender: TObject);
var
s:string;
begin
edit1.Text:='Name='+chr(39)+edit1.Text+chr(39); //адрес это мое поле было
Table1.Filtered:=True;
Table1.Filter:=edit1.Text;
edit1.Text:=s;
end;
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #15


Новичок
*

Группа: Пользователи
Сообщений: 40
Пол: Мужской
Реальное имя: САША

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


Что не кто не знает (((( unsure.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

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

 





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