Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 03.06.2012, 20:57   #1
iskurt
Форумчанин
 
Регистрация: 02.06.2009
Сообщений: 228
По умолчанию Delphi MySql Navicat - связать данные из разных таблиц

Очень добрый вечер.
Есть необходимость написать программу типа классный журнал.
Есть таблица ПРЕПОДЫ, УРОКИ. MySQL
Как привязать, с помощью NAVICAT (или в делфи) к преподу урок, или к уроку препода?

Заранее благодарен.
iskurt вне форума Ответить с цитированием
Старый 03.06.2012, 21:17   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

У каждого урока должно быть поле, с идентификатором преподавателя.
А лучше по другому:
1) Преподы: ID, ФИО
2) уроки: ID, название, тема
3) Пары: Дата, IDпрепода, IDУрока
три таблицы, третья связующая. Согласись - уроки могут повторяться. Меняется по факту только дата и возможно преподаватель (вдруг заболел и нужно подменять)
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 03.06.2012, 21:40   #3
iskurt
Форумчанин
 
Регистрация: 02.06.2009
Сообщений: 228
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
У каждого урока должно быть поле, с идентификатором преподавателя.
А лучше по другому:
1) Преподы: ID, ФИО
2) уроки: ID, название, тема
3) Пары: Дата, IDпрепода, IDУрока
три таблицы, третья связующая. Согласись - уроки могут повторяться. Меняется по факту только дата и возможно преподаватель (вдруг заболел и нужно подменять)
Целиком и полностью согласен.
но меня интересует сам механизм, а именно... в акцессе - запросто связываю таблицы и поля. КАК МНЕ БЫТЬ В ЭТОМ СЛУЧАЕ? либо с помощью кода в делфи связывать, либо как то настраивать в навикате, либо еще как нить.. не умею, только начинаю... вот и прошу помощи. я так понимаю это нужно делать с помощью FOREIGN KEY... так?
а вот чуть подробнее про внешний ключ и как правильно его реализовать... ВОТ В ЧЕМ ВОПРОС!!!!
iskurt вне форума Ответить с цитированием
Старый 03.06.2012, 21:52   #4
iskurt
Форумчанин
 
Регистрация: 02.06.2009
Сообщений: 228
По умолчанию

Методом длогих и многих проб и ошибок я кажется в навикате разобрался как создать внешний ключ... спасибо большое!!!
iskurt вне форума Ответить с цитированием
Старый 03.06.2012, 22:31   #5
iskurt
Форумчанин
 
Регистрация: 02.06.2009
Сообщений: 228
По умолчанию

Так, ключ настроил... в навикате все работает и есть возможность выбирать запись в новой таблице (т.е. записи подхватываются) а как теперь это сделать в ДЕЛФИ?
Если руками вписываю в Пары.IDУрока и угадываю название, то все нормально, если не угадываю - выдает ошибку. А мне нужно сделать что бы на нажатию на это поле выпадал список, с выбором предмета... в DBGrid
Использую ADO, ODBC

Последний раз редактировалось iskurt; 03.06.2012 в 23:08.
iskurt вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Нужно корректно отобразить данные из таблиц на сервере mysql Amabilis Помощь студентам 0 01.03.2010 20:40
соединение двух столбцов, имеющих схожие данные из разных таблиц kate158 SQL, базы данных 3 11.09.2009 10:08
Связать данные двух таблиц ZhK Microsoft Office Excel 5 03.09.2009 12:23
Помогите связать данные двух таблиц ZhK Microsoft Office Excel 47 27.08.2009 13:22
Связать Mysql c Delphi kiber0net0 Помощь студентам 4 02.09.2008 23:44