Отправляет email-рассылки с помощью сервиса Sendsay

RFpro.ru: СУБД и Delphi/Lazarus

  Все выпуски  

RusFAQ.ru: СУБД и Delphi


Новое направление Портала RusFAQ.ru:
MosHoster.ru - Профессиональный хостинг

РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / СУБД и Delphi

Выпуск № 499
от 01.09.2008, 19:05

Администратор:Gh0stik
В рассылке:Подписчиков: 249, Экспертов: 21
В номере:Вопросов: 1, Ответов: 2

Нам важно Ваше мнение об этой рассылке.
Оценить этот выпуск рассылки >>


Вопрос № 142422: Пипл! Можете показать на пальцах как реализовать следующий вопрос. Есть база db.mdb, в ней есть поля "Наименование", "Цена", "Размер" и т.д., как можно организовать поиск подстроки в поле "Наименование"? Вариан...

Вопрос № 142.422
Пипл! Можете показать на пальцах как реализовать следующий вопрос. Есть база db.mdb, в ней есть поля "Наименование", "Цена", "Размер" и т.д., как можно организовать поиск подстроки в поле "Наименование"? Вариант с Locate хорошо и быстро работает, но ищет только от начала слова, а мне надо чтоб фраза была найдена в любой позиции поля.
Отправлен: 27.08.2008, 18:49
Вопрос задал: Maximus777 (статус: Посетитель)
Всего ответов: 2
Мини-форум вопроса >>> (сообщений: 13)

Отвечает: Кэр Лаэда
Здравствуйте, Maximus777!


вы правильно догадываетесь
Adoquery
datasource
и если в будущем будете использовать несколько соединений то еще и adoconnection
по поводу как соединить все эти компоненты

Первым делом нужно на форму бросить компонент ADOConnection1, в свойстве ConnectionString выбрать ваше соединение, для этого нажать Build выбрать поставщика Microsoft Jet 4.0 нажать далее потом выбрать ваш Access файл и проверить подключение, если все хорошо то жмете ОК (все строка подключения задана)

далее бросаете на форму
DataSource из DataAccess
DBgrid из DataControls
ADOQuery из ADO

и связываете их друг с другом

буду писать как код, но это на самом деле нужно будет просто выставить в свойствах компонентов

DBgrid1.DataSourse:=DataSourse1


DataSourse1.DataSet:=ADOQuery1

все настройка компонентов произведена далее к запросам


при нажатии на кнопку например "поиск" выполня ется следующий код


with ADOQuery1 do
begin
Close;
SQL.Clear;
SQL.Add('select * from table where Наименование like ''%подстрока%''');
open;
end


и в принципе все

если будут вопросы в минифорум
---------
Я знаю что ничего не знаю, но я знаю больше, чем тот кто думает что знает все
Ответ отправил: Кэр Лаэда (статус: Практикант)
Ответ отправлен: 27.08.2008, 19:17
Оценка за ответ: 5
Комментарий оценки:
Наверное это самое то. Но мне выдаёт ошибку. Вот мой запрос:
SQL.Add(* from База where Наименование like %NameClient.text%);
NameClient это Edit. Компиль говорит:
Illegal character in input file: % (#$25)
А если сделать без то компилится, но не работает.

Отвечает: Шичко Игорь
Здравствуйте, Maximus777!
Поиск подстроки в базе данных осуществляется при помощи SQL типа:
SELECT Наименование FROM db.mdb WHERE Наименование LIKE '%строка%'
Описание LIKE:
'abc%' - Любые строки, которые начинаются с букв "abc".
'abc_' - Строки длиной строго 4 символа, причем первыми символами строки должны быть "abc".
'%z' - Любая последовательность символов, которая обязательно заканчивается символом "z".
'%Rostov%' - Любая последовательность символов, содержащая слово "Rostov" в любом месте строки.
Ответ отправил: Шичко Игорь (статус: 1-ый класс)
Ответ отправлен: 28.08.2008, 08:48


Вы имеете возможность оценить этот выпуск рассылки.
Нам очень важно Ваше мнение!
Оценить этот выпуск рассылки >>

Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2008, Портал RusFAQ.ru, Россия, Москва.
Авторское право: ООО "Мастер-Эксперт Про"
Техподдержка портала, тел.: +7 (926) 535-23-31
Хостинг: "Московский хостер"
Поддержка: "Московский дизайнер"
Авторские права | Реклама на портале

∙ Версия системы: 5.1 beta(win) от 11.08.2008

Яндекс Rambler's Top100
RusFAQ.ru | MosHoster.ru | MosDesigner.ru | RusIRC.ru
Kalashnikoff.ru | RadioLeader.ru | RusFUCK.ru

В избранное