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

Вниз

Помогите с поиском записей в БД!   Найти похожие ветки 

 
Troy_piter   (2003-05-24 18:39) [0]

Проблема такая: есть БД Paradox, необходимо сделать поиск по значению поля, задаваемому в Edite. Насколько я понимаю, код должен быть примерно таким:
Query1.SQL.Add("SELECT * FROM <Имя таблицы> WHERE <Имя поля> = "+Edit1.Text";");
Но это не все, нужно еще сделать преобразование типов, что ли... Так вот, собственно, и вопрос: а как его сделать? Или, может быть, посоветуете еще какой-нибудь способ? Если можно, поподробнее, пожалуйста! Буду очень благодарен!!!


 
Ovsjanikov   (2003-05-24 19:09) [1]

Не глумись !

Если тебе нужно конкретно отобрать запись с сервака, чтобы
не тянуть кучу данных, то запрос должен быть однозначным.

Если ты тянешь с сервака (или делаешь выборку локально) всех данных, то для этого у TQuery есть свойство Filter, только нужно включить свойство filtered:=true и в foNoPartialCompare:=false
Дальше просто - по изменению Edit1 (OnChange) пишешь следующий код:

if Edit1.text<>"" then
begin
Query1.Filter:=Edit1.Text+"*";
end else Query1.Filter:="";

в этом случае во время писанины пользователя в Edit"е в Query будут отбираться данные. Если у тебя пользователь написал строку в Edit а поиск (выборка) по кнопке), тогда можешь запихнуть этот код в кнопку, и кстати если нужны однозначные записи то * надо убрать и foNoPartialCompare:=true.

А если не по кнопке, то я не пойму: Зачем запихивать отбор данных в запрос?, этоже не удобно когда будешь переносить в сеть. Получается ты каждый раз заставляешь сервак перегонять все записи когда юзер пишет значение. А так ты один раз отбираешь, а потом локально выбираешь, понял ?

Если не понял - пиши,
С уважением,
Овсяников Максим.


 
Troy_piter   (2003-05-25 00:56) [2]

Все понял, спасибо!
БД локальная, так что с сетью заморочек нет =)
Просто задание такое - курсовик нужно сделать - чтобы все запросы шли через SQL... Не понимаю, зачем в данном случае это нужно, да и зачем вообще реляционная БД, ну да ладно - задание есть задание... =(
Еще раз спасибо! Удачи! ;)



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

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

Наверх




Память: 0.47 MB
Время: 0.025 c
1-34889
Remis
2003-05-31 16:57
2003.06.12
ListBox


1-34795
Fuelfire
2003-06-02 13:32
2003.06.12
Как экспортнуть данные из таблицы Paradox??


1-34826
blackgrin
2003-06-02 23:07
2003.06.12
Уменьшить использование памяти...


6-34947
Freeze
2003-04-04 12:06
2003.06.12
Написание локального чата...


1-34798
a72
2003-05-29 10:39
2003.06.12
Обработка событий в своем компоненте