Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Базы данных
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 16.05.2008, 18:14
IDK IDK вне форума
Прохожий
 
Регистрация: 16.05.2008
Адрес: Бобруйск
Сообщения: 6
Репутация: 10
Вопрос Связи

Здравствуйте все, кто это читает.

У меня есть 2 вопроса, ответы на которые возможно найти, используя хорошую книжку.

Но моя проблема в том, что:
а.) Нет хорошей книжки по БД.
б.) Нет времени её искать, т.к.:
1.) Завтра экзамен по БД.
2.) Через неделю сдавать 2 курсовые.
3.) Весь семестр я проходил курс "Базы данных". Сегодня начал изучать.
в.) Хроническая лень и большая сложность предмета, а также широкий круг более интересных задач, так или иначе связанных или не связанных с предметом, которые, на текущий момент, мне кажутся более привлекательными для изучения.
Тем, кто всё-таки до сюда дочитал и решил, что стоит посвятить время на ответ, вопрос:
Как "перенести" ER-диаграмму в Delphi?
Т.е. имеется ER-диаграмма, в которой определены таблицы и связи.
Как, используя BDE и стандартные Vcl компоненты, в частности Table,
организовать эту структуру в программе?
Конкретно:
1.) Напишите пожалуйста алгоритм (т.е. какие поля надо установить,
куда надо нажать в Delphi или сопутствующих утилитах от Bugland) для:
а.) Организации м. таблицей A и таблицей B связи 1:1.
б.) Организации м. таблицей A и таблицей B связи 1:М.
в.) Организации м. таблицей A и таблицей B связи М:1.
г.) Организации м. таблицей A и таблицей B связи М:М.
2.) Объясните как связать одну таблицу с несколькими. Т.е., например
есть таблица A. Как её связать не только с таблицей B, но с таблицей
C и D?
Ответить с цитированием
  #2  
Старый 16.05.2008, 18:40
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,024
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

твои вопросы слижком общие. в большинстве случаев все решается по ситуации. По ER-диаграмме строится БД. А вот какие из таблиц надо связывать и как (а какие являются просто справочниками) зависит только от конкретной задачи. Ты же не будешь на одной форме отображать содержимое _ВСЕХ_ таблиц одновременно.

ЗЫ. Свзяь многие-ко-многим реализуется в 3 таблицы и напрямую в компоненты обычно не отображается, а используется для построения запросов.

ЗЗЫ. Кстати, BDE тут вообще нипричем. Это всего-лишь одна из технологий доступа к данным и не более.
Ответить с цитированием
  #3  
Старый 16.05.2008, 19:49
IDK IDK вне форума
Прохожий
 
Регистрация: 16.05.2008
Адрес: Бобруйск
Сообщения: 6
Репутация: 10
По умолчанию

2lmikle:
1.) BDE, в смысле компоненты на вкладке BDE, используются у меня в курсовой. В частности, TTable;
2.) Т.е. мой вопрос сводится к тому как нужно установить MasterSource, MasterFields и всякие .*Indexes, чтобы реализовать данные типы связи.

Последний раз редактировалось IDK, 17.05.2008 в 15:36.
Ответить с цитированием
  #4  
Старый 17.05.2008, 15:34
IDK IDK вне форума
Прохожий
 
Регистрация: 16.05.2008
Адрес: Бобруйск
Сообщения: 6
Репутация: 10
По умолчанию

Так, на экзамене я понял, что MasterSource и MasterFields для TTable определяют отношение "главный-подчинённый".

1.) А что надо сделать/установить, если у таблицы две главных?
2.) Всегда ли надо при создании таблиц в Database Desktop определять ссылочную целостность?

P.S.: В общем, я приложил ER-диаграмму для первой БД. В частности, вопросы по ней.
Изображения
Тип файла: jpg erd0.JPG (17.4 Кбайт, 6 просмотров)
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 14:50.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter