|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу. Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста". Название темы слишком короткое или не отражает сути вашего вопроса. Тема исчерпала себя, помните, один вопрос - одна тема Прочитайте правила и заново правильно создайте тему. |
|
Опции темы | Поиск в этой теме |
11.05.2009, 14:58 | #41 |
Старожил
Регистрация: 05.06.2008
Сообщений: 4,206
|
А когда делаю для проверки внесение данных тока из одной строки, т.е. так:
Код:
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
|
11.05.2009, 15:18 | #42 |
Форумчанин
Регистрация: 06.03.2009
Сообщений: 583
|
Как я понял в StringGrid общее число строчек равно 25, а заполнено всего 2, которые и должны быть занесены в таблицу, значит надо делать проверку на пустые значения.
А в главной таблице должны быть занесены две строки (в данном случае) из StringGrid и при этом в подчиненной таблице для каждой строки главной таблицы четверть и год заносятся. Тогда, если исходить из такой логике, код будет примерно такой: Код:
Писал, прямо на форуме по памяти, поэтому возможны опечатки, но по логике, где то примерно так должно быть. А если захочешь отдельно заполнять подчиненнную таблицу, то учитывай что она связана с главной таблицей, значит надо сначала перейти на другую запись в главной таблице, а потом заполнить. Примерно так: Код:
Не стыдно чего-то не знать, стыдно не стремиться к знаниям.
Последний раз редактировалось ArtInt; 11.05.2009 в 15:25. |
11.05.2009, 15:52 | #43 |
Старожил
Регистрация: 05.06.2008
Сообщений: 4,206
|
ArtInt, Ваша память Вас как всегда не подвела и для главной таблицы Вы правильно код написали . Там теперь работает. А вот у меня в коде дочерней таблицы идет проверка по условиям. Код:
Код:
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
|
11.05.2009, 16:07 | #44 | ||
Форумчанин
Регистрация: 06.03.2009
Сообщений: 583
|
Как понять данную строчку, если Id (+) автоинкрементное, то наверное в этом случае будет ошибка выводится.
Код:
Код:
Вот в чем вопрос: Зачем делать такую сложную проверку, не легче ли сразу присвоить значение DBLookupCombobox2.Text; , ведь как я вижу текст то одинаковый??? Второй вопрос: Смысл программы как я понял: Сначала пользователь заполняет фамилии и имена. Потом выбирает четверть и год. Потом нажимает на кнопку Добавить данные(и данные из StringGrid заносятся в таблицу). Цитата:
Цитата:
Не стыдно чего-то не знать, стыдно не стремиться к знаниям.
Последний раз редактировалось ArtInt; 11.05.2009 в 16:11. |
||
11.05.2009, 16:10 | #45 |
Старожил
Регистрация: 05.06.2008
Сообщений: 4,206
|
ArtInt, огромное спасибо Вам за помощь ). Жаль, что не получается оставить Вам отзыв . Ваш код самый правильный. А вот то, что у меня в дочерней таблице отображаются данные одного и того же человека, но когда он имеет разные ID, это правильно? . Скрин прилагается.
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
|
11.05.2009, 16:20 | #46 |
Форумчанин
Регистрация: 06.03.2009
Сообщений: 583
|
В дочерней таблице Id относится только к ней, а вот поле по которому делалась связь с главной таблицей должно содержать такой же индекс как и главной в поле Id.
Так что, это нормально. P.S. Отзыв можно и попозже оставить.
Не стыдно чего-то не знать, стыдно не стремиться к знаниям.
|
11.05.2009, 16:20 | #47 |
Старожил
Регистрация: 05.06.2008
Сообщений: 4,206
|
Дружище, если в кратце, то суть моей программы такова: пользователь вносить ФИО ученика, выбирает четверть, предмет, год, вводить оценки. Далее считаются критерии. И все эти результаты должны заносится в БД по своим таблицам. Думаю, что такая структура должна быть нормальной. Как Вы считаете? И, при выборе ученика в главной таблице infa у меня в остальных таблицах должна выводится информация для соответстствующего выбранного ученика. .
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
|
11.05.2009, 16:23 | #48 |
Старожил
Регистрация: 05.06.2008
Сообщений: 4,206
|
А вот еще такой вопрос: как лучше поступить с таблицей critery? (самая нижняя и большая таблица). Как ее лучше связать: связать ее с таблицей predmety по ID_Predmet или связать эту таблицу (critery) с главной таблицей (infa) по ID?
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
|
11.05.2009, 16:35 | #49 |
Форумчанин
Регистрация: 06.03.2009
Сообщений: 583
|
таблицу Criteria - зависит от того, если эти критерии вычисляются один раз для ученика на протяжении всего года, то можно связать с Infa.
Если же вычисления происходят по каждому предмету, который сдает ученик, то по таблице предметы.
Не стыдно чего-то не знать, стыдно не стремиться к знаниям.
|
11.05.2009, 16:48 | #50 |
Старожил
Регистрация: 05.06.2008
Сообщений: 4,206
|
Ну, а если например ученик изучает русский язык несколько лет подряд, то для него премдет может быть одинаковым и четверти тоже. Разными будут год обучения и количество оценок и результаты критериев. Тогда как? Связать с таблицей infa? По логике-то должно быть правильно, что мы выбирая ученика по его ФИО должны получать инфу о его успеваемости, а не выбирая предмет. Иначе как мы будем знать к какому ученику относятся эти данные. Изначально я подразумевал, что у меня таблица predmety не будет связана с таблицей infa, а на таблицу предметы будет ссылаться как-то таблица critery. Кстати, у меня в таблицу critery ID_Predmeta заносится не из таблицы predmety, а из другой таблицы БД на главном окне проги. Может тогда правда сделать ссылку таблицы critery на таблицу infa по ID? Вот код внесения данных в таблицу critery:
Код:
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
Последний раз редактировалось artemavd; 11.05.2009 в 16:55. |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Связь таблиц в Database Desctop | Sergius X | БД в Delphi | 0 | 22.04.2009 16:53 |
Связь с кучей dbf файлов (таблиц) через OLEDB через UNION ALL | Sasha811 | SQL, базы данных | 0 | 01.01.2009 14:04 |
Связь таблиц в Delphi | adinadin111 | БД в Delphi | 3 | 10.07.2008 14:50 |
связь таблиц в локальной БД | IGREK | БД в Delphi | 3 | 30.06.2008 19:46 |
Связь таблиц БД | kaa | БД в Delphi | 5 | 18.09.2007 18:29 |