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

Delphi Sources



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

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 12.04.2009, 15:16
andirock2112 andirock2112 вне форума
Прохожий
 
Регистрация: 12.04.2009
Сообщения: 2
Репутация: 10
Вопрос Связь многие-ко-многим

Доброго всем времени суток!
Мне интересно, кто-нибудь создавал связь многие-ко-многим в Delphi (БД Paradox)? Если, да, то как это сделать? Про создание дополнительной таблицы я знаю, проблема в том, что до этого я связывала таблицы в конструкторе связей, а там даже с дополнительной таблицей многие-ко-многим не получается. В общем, наверно, есть и другие варианты. Мне было бы интересно их узнать

P.S. В программировании я новичок, так что давайте без комментариев типа "не умееешь - не берись", ок? Все ведь когда-то учились
Ответить с цитированием
  #2  
Старый 13.04.2009, 11:35
civicuu civicuu вне форума
Прохожий
 
Регистрация: 04.04.2009
Сообщения: 7
Репутация: 10
По умолчанию

Цитата:
Сообщение от andirock2112
Доброго всем времени суток!
Мне интересно, кто-нибудь создавал связь многие-ко-многим в Delphi (БД Paradox)? Если, да, то как это сделать? Про создание дополнительной таблицы я знаю, проблема в том, что до этого я связывала таблицы в конструкторе связей, а там даже с дополнительной таблицей многие-ко-многим не получается. В общем, наверно, есть и другие варианты. Мне было бы интересно их узнать

P.S. В программировании я новичок, так что давайте без комментариев типа "не умееешь - не берись", ок? Все ведь когда-то учились
я тоже новичок, но рискну посоветовать
табл1 = tabA
табл2 = tabБ
доп_табл=tabС
для связи M:M таблиц A и B: tabA<->tabC (1:M), tabC<->tabB (M:1)
осваивайте SQL, очень удобно, со временем прибавится простота.
Ответить с цитированием
  #3  
Старый 14.04.2009, 09:04
andirock2112 andirock2112 вне форума
Прохожий
 
Регистрация: 12.04.2009
Сообщения: 2
Репутация: 10
По умолчанию

Спасибо! Буду пробовать
Ответить с цитированием
  #4  
Старый 15.04.2009, 01:12
Saint Garry Saint Garry вне форума
Прохожий
 
Регистрация: 12.04.2009
Сообщения: 18
Репутация: 10
Счастье

Давайте разберемся :
1)
Тип сбязи в бд зависит только от наполнения связаных полей, тоесть связь многие-ко-многим образуется, если в двух таблицах (главной и детальной) в некотором поле (столбце) имеются одинаковые значения

Пример:

таб1-полеА <-----> таб2-полеБ

1 ----------------------- 3
2 ----------------------- 2
3 ----------------------- 1
1 ----------------------- 2
2 ----------------------- 1

в даном примере при срабатывании механизма связи с указателем
на строке со значением "1" в "таб1"(главной) - в "таб2" (детальной) останутся 2 записи с таким же значением. То же самое будет если указать в главной таблице вторую запись с таким же значением.
Получается МНОГО записей главной таблицы соответствуют МНОГИМ записям детальной или наоборот

2) в Делфи механизм связи между таблицами реализуется (для компонент Ttable) установкой свойства IndexFieldNames, MasterSource и MasterField у детальной таблицы в MasterSource указываем Datasource главной таблицы, в MasterField указиваем с каким полем в главной таблице будем создавать связь, в поле IndexFieldNames указиваем поле для связи(детальное), его вроде нужно проиндексировать.

Вроде все. Успехов!!
Ответить с цитированием
Ответ


Delphi Sources

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

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

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

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


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


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

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

ВКонтакте   Facebook   Twitter