Конференция "Базы" » Связь многие ко многим [D7, Paradox]
 
  • andirock2112 © (12.04.09 05:37) [0]
    Доброго времени суток! Объясните, пожалуйста, как организовать связь многие ко многим (БД в Paradox). И возможно ли это вообще? ;)
  • AndreyV © (12.04.09 06:04) [1]
    > [0] andirock2112 ©   (12.04.09 05:37)
    > Доброго времени суток! Объясните, пожалуйста, как организовать
    > связь многие ко многим (БД в Paradox). И возможно ли это
    > вообще? ;)

    Смотри примеры из стандартной поставки Делфи.
  • andirock2112 © (12.04.09 07:02) [2]
    хм... а вы уверены, что там это есть?
  • turbouser © (12.04.09 10:35) [3]

    > andirock2112 ©

    3 секунды в гугле и http://www.firststeps.ru/mfc/msdn/r.php?117
  • andirock2112 © (12.04.09 11:12) [4]
    Ха! Как это сделать теоретически я знаю! Мне бы кто-нибудь сказал, где и что прописать надо, чтобы эта база работала ;)
  • turbouser © (12.04.09 11:59) [5]

    > andirock2112 ©   (12.04.09 11:12) [4]

    В "Database desktop" в дизайнере таблицы надо задать "Referential integrity"
    а вообще, paradox must die =)
  • andirock2112 © (12.04.09 12:45) [6]

    > turbouser ©


    Ну, с тем, что paradox must die это я согласна... :(
    ...С Referential integrity не получается (delphi эти связи не видит) Может еще варианты будут? :)
  • sniknik © (12.04.09 13:24) [7]
    > Ха! Как это сделать теоретически я знаю!
    вообще то если ли бы знал (/понимал), то что практически прописывать у тебя бы вопроса не стояло.

    вот разве сложно сделать дополнительно таблицу? - нет.
    2 поля в ней? - нет.
    связь один ко многим из одной таблици на одно поле, и такуюже из другой на другое? - тоже нет.
    т.е. все несложно, но тем не менее связь многие ко многим этим уже построена...

    если не понимаешь принципа, то не сможешь с этим работать, простейший запрос написать... а волшебного средства, типа "поставил галочку где нибудь и все работает" нету.

    > ...С Referential integrity не получается (delphi эти связи не видит)
    а что он тут должен увидеть? это простое обеспечение ссылочной целостности на уровне движка. т.е. это метод которым делается, а не "волшебное средство" чтобы выбрал и все само делается.

    > Может еще варианты будут? :)
    солить их собираешься?
  • andirock2112 © (12.04.09 14:29) [8]
    sniknik, ну во-первых, логическое понимание, как что-то сделать, и практическое приложение своих знаний - это совсем разные вещи. Во-вторых мне нужно не волшебное средство, а нормальное объяснение, потому что в учебниках я этого не нашла.
    Ну а насчет всего остального... базы данных я начала изучать недавно и до этого связывала таблицы при помощи конструктора связей в Delphi, не используя Referential integrity. Вот поэтому я и прошу подробно мне объяснить, как это сделать.


    > > Может еще варианты будут? :)
    > солить их собираешься?

    Зачем солить? На полочку положу и буду использовать по мере необходимости.
  • sniknik © (12.04.09 15:18) [9]
    > а нормальное объяснение
    по ссылке в [3] вполне нормальное объяснение сути.

    > Вот поэтому я и прошу подробно мне объяснить, как это сделать.
    3 шага в [7], это фактически уже подробное объяснение как сделать такую связь. (+ 6 чтобы эту связь "укрепить" не дать внести туда не валидные ссылки)

    но вот чтобы использовать, тут надо больше, надо и суть понимать и методы работы с базами/таблицами уметь использовать.

    вот например я дам тебе варианты получения (пример работы с ними) -
    все работы где был Сидоров (то что в примере в ссылке):
    SELECT n.Name,j.Job
    FROM TJob j
    INNER JOIN (TName n INNER JOIN TCross c ON n.ID = c.ID_NAME) ON j.ID = c.ID_WORK
    WHERE n.ID=3

    или наоборот все работники МУП-а:
    SELECT j.Job, n.Name
    FROM TJob j
    INNER JOIN (TName n INNER JOIN TCross c ON n.ID = c.ID_NAME) ON j.ID = c.ID_WORK
    WHERE j.ID=2

    это тебе поможет?

    надо не варианты на полочку собирать, а пытаться разобраться, понять, так чтобы самому любой вариант было не проблема написать.
  • Сергей М. © (12.04.09 20:12) [10]

    > возможно ли это вообще?


    Две отдельно взятые нормальные РСУБД-таблицы не могут жить в сношении "многие к многим".

    И Парадокс тут ни причем.
 
Конференция "Базы" » Связь многие ко многим [D7, Paradox]
Есть новые Нет новых   [134477   +40][b:0][p:0]