![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 20.10.2011
Сообщений: 53
|
![]()
Здравствуйте! Добрые люди, подскажите, пожалуйста.
После нажатия кнопки "Добавить", в подчиненной таблице в столбце Номер учебной группы должны записи добавиться автоматически, так как Схемма данных.zip Но они у меня не отображаются никак. Помогите разобраться в моей программе: Добавление данных.zip Свойства MasterSource и MasterFields компонента AdoTable тоже не помогли( |
![]() |
![]() |
![]() |
#2 | |
Форумчанин
Регистрация: 08.09.2010
Сообщений: 880
|
![]() Цитата:
Утверждение, что "должны записи добавиться автоматически" ни на чем не основаны. Схема отношения таблиц справедлива при чтении данных, когда связи между строками таблиц уже существуют. При добавлении же, связи еще не установились и с какого перепугу что-то там должно появляться автоматом? Тем более на форме клиентской программы. Допустим, мы ввели в поля формы все значения, но значение "Номер учебной группы" не записываем в таблицу. Откуда БД будет "знать" что добавляемая строка относится к какой-то конкретной группе? Нет, батенька, номер группы тоже надо записать в подчиненную таблицу. Вот тогда схема эта будет "работать". Да и то, как сказано выше, только при объединении данных этих двух таблиц через селективный запрос (SELECT). Другое дело, если мы хотим использовать активную строку из главной таблицы для чтения из нее номера группы. Здесь да, можно взять номер группы и подставить ее в табличное поле слушателей. Для пользователя группа будет введена как бы автоматически: Код:
- добавление записей одновременно в таблицу групп и слушателей как-то не очень понятно. Такое возможно только, если в каждой группе всегда по одному слушателю. Если же в группе может быть больше одного слушателя, то добавлять в эти таблицы записи нужно отдельно; - создавать первичный ключ в таблице на поле, которое может не иметь уникальных значений не принято (попросту нельзя). Надо сделать отдельное поле для первичного ключа (типа Счетчик, к примеру). Речь о таблице слушателей. - отображение записей в подчиненной таблице надо фильтровать в зависимости от активной строки в главной таблице. Так чтобы в подчиненной таблице показывались слушатели из одной группы (та, которая активная в главной). А это делается через фильтр ADOTable или при использовании ADOQuery условиями в запросе. Последний раз редактировалось Прик; 02.03.2012 в 00:54. Причина: Дабавим кое-что |
|
![]() |
![]() |
![]() |
#3 | |
Пользователь
Регистрация: 20.10.2011
Сообщений: 53
|
![]() Цитата:
|
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
база данных. добавление и удаление данных | midiss | Общие вопросы Delphi | 3 | 09.12.2011 13:07 |
добавление данных в бд | wulf_01 | Помощь студентам | 1 | 18.10.2011 14:56 |
добавление данных | sveta_s | БД в Delphi | 4 | 28.05.2011 01:48 |
Добавление данных | Ruska882009 | PHP | 2 | 22.09.2009 18:36 |
Добавление данных | OLEGSENT | БД в Delphi | 3 | 17.06.2008 23:47 |