Форум: "Базы";
Текущий архив: 2005.01.02;
Скачать: [xml.tar.bz2];
Внизтаблица в таблице Найти похожие ветки
← →
dolphin (2004-12-07 05:22) [0]есть 1-я таблица
студенты :
1 - студенты 1 курса
2 - студенты 2 курса
нухрш чтобы втаблице студенты сначала отображалось только
2 поля (1 - студенты 1 курса , 2 - студенты 2 курса) при выборе
одного из них в таблице открывалась подтаблица данного раздела
← →
ЮЮ © (2004-12-07 05:27) [1]Ничего не понял. Сколько таблиц-то? И когда говорят есть таблица, то у таблицы есть поля.
в таблице открывалась подтаблица данного раздела.
А откуда возникли эти котегорbb, если только есть 1-я таблица ?
← →
ЮЮ © (2004-12-07 05:40) [2]Если есть таблицв Students c полем Course
To запрос SELECT DISTINCT Course FROM Students вернет несколько записей с оригинальными значениями Course. Результаты этого запроса можно, например, записать в TCombobox:
c := query.Fields[0].asInteger;
cbCourses.Items.AddObject("Студенты " + IntToStr(c) + " курса", TObject(c));
Запрос SELECT * FROM Students WHERE Course = :Course
вернет только "студентов Course курса".
После выбора значения в cbCourses следует изменить параметр у второго запроса и переоткрыть его. Результаты этого запроса логично отображать в TDBGRide.
← →
dolphin (2004-12-07 05:51) [3]я хочу зделать иерархию (дерево баз в одной)
← →
ЮЮ © (2004-12-07 05:56) [4]>дерево баз в одной
Дерево при отображении - ради бога, но дерево при реализации - боже упаси :)
База - это совокупность файлов (таблиц, индексов) в каталоге
Теgерь поподробнее о (дерево баз в одной)
← →
dolphin (2004-12-07 06:16) [5]извени за заблуждение :
есть 3 базы ничем между собой не связанных
dbgrid отображается база студентов(1)
вней есть таблица *курс*
! курс !имя !...!
! 1 ! ! !
! 2 ! !
! 2 ! !
! 1 ! !
вот захочу я только второкурсниов вывести и все
по этому полю (курс ) дожен идти запрос
> дерево при реализации - боже упаси :)
:))
← →
ЮЮ © (2004-12-07 06:27) [6]>dbgrid отображается база студентов(1)
В dbgrid, так уж он устроен, отобращаются записи из DataSeta, но никак ни база студентов
Если это TTable, то Table.Filter := "Course = 2"; Table.Filtered := tru;
Если это TQuery, то должен присутствовать предикат WHERE :
"WHERE Course = 2" млм "WHERE Course = :Course"
В первом случае запрос динамический, т.е. текст его меняется в зависимости от значения курса, во втором - параметрический, т.е. текст запроса не меняется, достаточно менять TQuery.Params[0].Value
← →
Наталия © (2004-12-07 06:30) [7]ЮЮ - тебе полагается приз за понимание и долготерпение! :)))
← →
ЮЮ © (2004-12-07 06:33) [8]>Наталия
Я сегодня от стоматолога. Это наверное ещё анестезия действует :)
← →
dolphin (2004-12-07 06:35) [9]я думаю лучше взять главную аблицу (студенты) и связать ее с таблицой 1 - крса и 2 - курса
* я просто лам в базах только сугодня на даную тему читать начал и нашол вот только счас решение*
> Table.Filter := "Course = 2"; Table.Filtered := tru;
-за это спасибо
:)
← →
ЮЮ © (2004-12-07 06:49) [10]>думаю лучше взять главную аблицу (студенты) и связать ее с таблицой 1 - крса и 2 - курса
Интересно, а что тогда такое "имя" в таблице "курс", если, оказывается ещё есть и "главную таблица (студенты)"?
И если есть таблица "курс" с полем "курс", то откуда тогда "таблицой 1 - крса и 2 - курса"
З.Ы. Не зная структуры твоих таблиц что-либо советовать невозможно
← →
Anatoly Podgoretsky © (2004-12-07 11:22) [11]ЮЮ © (07.12.04 06:49) [10]
Не забудь еще про три базы, несвязанные, с ним вообще темнота. Так что придется тебе опять идти к врачу, лучше к хирургу.
← →
ЮЮ © (2004-12-07 11:33) [12]Не боись, завтра мне ещё раз (к хирургу), а всю следущую неделю - на лечение оставшихся :)
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2005.01.02;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.039 c