Форум: "Базы";
Текущий архив: 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