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

Вниз

Помогите примерчиком...   Найти похожие ветки 

 
ZiLot   (2002-12-30 22:04) [0]

Народ помогите кто-нибудь!
Срочно надо сделать программу, работающую с БД... Есть и книги по этому, есть еще всякая инфа, но там все это расписано ОЧЕНЬ подробно и глубоко, а мне сейчас теории не надо, мне надо чисто практическое применение...
Помогите пожалуйста примерчиком!
Есть таблица с полями, например Имя, Фамилия, Телефон и Раздел (может принимать несколько значений, например 1, 2 и 3)
Надо:
1) Нужно чтобы введя в Edit значение поля "раздел" (1, 2 или 3) пользователь получал в расположенный на форме ListBox все строки таблицы, поле "раздел" в которых равно именно выбранному значению. Т.е. просто отфильтровать, те строки в которых значение поля другое...
2) Чтобы можно было добавить еще строку в БД (только не через DBnavigator)
Заранее спасибо...

ЗЫ: Таблица - Paradox, но в случае чего можно и поменять - это не критично...


 
Наталия   (2002-12-31 06:12) [1]

1)
а) Сделать цикл от начала до конца таблицы с проверкой поля "раздел" и добавление нужных записей в Listbox.
б) Создать запрос, где в условии Where отобрать нужные записи и затем результат запроса поместить в Listbox.
в) Можно ещё попытаться сделать через Table1.filter..., Table1.filtered...
2)
Table1.append;
Table1.fieldbyname("Name").asstring:=edit1.text;
Table1.post;


 
ZiLot   (2002-12-31 08:44) [2]

Спасибо за помощь...
А как определить конец таблицы? while (тут чего писать-то?) или for a:=1 to ...


 
ZiLot   (2002-12-31 08:46) [3]

И как запрос создать?

PS: Я в БД в Делфи пока ноль, так что вопросы пока совсем дуратские :)


 
ZiLot   (2002-12-31 08:46) [4]

И как запрос создать?

PS: Я в БД в Делфи пока ноль, так что вопросы пока совсем дурацкие :)


 
Наталия   (2002-12-31 09:05) [5]

Так ты же сказал, что книги у тебя есть. :) Почитай там. :)
Конец таблицы: while not table1.eof do
Запрос создай динамически:
Query1.sql.add("select * from mytable where razdel=""+edit1.text+""");


 
Snake   (2002-12-31 09:05) [6]

ListBox1.Items.Clear; //Чистим ListBox
Table1.Filter:="Razdel="""+Edit1.Text+"""; //это если "Раздел" строковый
//если числовой, то Table1.Filter:="Razdel="+Edit1.Text
Table1.Filtered:=true;
Table1.First;
While not Table1.Eof do
begin
ListBox1.Items.Add(Table1.FieldByName("Имя").AsString); //добавляем на ListBox
Table1.Next;
end;

Код не проверял, но примерно это делается так. Вешаешь это все в событие, например, Edit1 OnChange (где вводится номер) или отдельно на событие какой-нить кнопки - OnClick. С запросами пока повремени, всему свое время :) С наступающим тебя, удачи в освоении Delphi!


 
ZiLot   (2002-12-31 17:28) [7]

Всем спасибо!
2 Snake

Заработало только для числовых значений, с текстовыми не хотит :) Но тем не менее спасибо за помощь...
Там так и должно быть такое число кавычек? А то что-то их там многовато...
>>удачи в освоении Delphi!
Да я в Delphi не новичек, просто с БД пока не приходилось работать, как-то текстовых файлов хватало :) Тут просто программу не для себя делаю, а как экзаменационную работу. Можно было бы и текстовыми файлами, но с БД как-то солиднее :)

2 Наталия

Книжка почти 700 страниц... Все что мне из не, пока, надо уместилось в 2х ответах :)



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

Форум: "Базы";
Текущий архив: 2003.01.23;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.007 c
1-72282
Chubais
2003-01-10 10:16
2003.01.23
Изменение DecimalSeparator


1-72376
Это опять Чайник.+
2003-01-13 12:37
2003.01.23
Помогите пожалуйста


3-72166
NTDim
2003-01-04 15:49
2003.01.23
Разница между строками запроса ...


6-72443
Beglec
2002-11-26 14:52
2003.01.23
Подсчет исходящих байтов


1-72387
Юра
2003-01-13 15:17
2003.01.23
Картинки в классе





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский