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

Вниз

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

 
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;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.013 c
3-72116
Nikolai_S
2002-12-25 18:02
2003.01.23
ADO.


3-72051
Tyke
2003-01-05 10:34
2003.01.23
Обновление записей в DataSet


1-72226
pavel_ak
2003-01-10 21:52
2003.01.23
*.doc в *.txt, и снести форматирование!


14-72494
fdut
2003-01-05 19:35
2003.01.23
Срочно помогите!


14-72497
Dr.Sergey
2003-01-01 14:05
2003.01.23
Подскажите пожалуйста