Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2003.06.12;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.007 c
3-34688
moorcat
2003-05-22 10:30
2003.06.12
Excel


1-34808
super_alex
2003-06-02 16:16
2003.06.12
Время на мат.операции?


4-35103
Clickmaker
2003-04-13 17:28
2003.06.12
Удаление ключа из HKEY_CLASSES_ROOT без прав админа


1-34908
Salvator
2003-05-28 11:48
2003.06.12
Работа с Word через Delphi


1-34796
Ghost_
2003-06-02 14:48
2003.06.12
ListView





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский