Projekt bazy - pomoc z encją pośredniczącą

0

Witam,
potrzebuję pomocy, a właściwie odpowiedzi na pytanie. Powiedzmy, że jest baza (część bazy) z aplikacjami na urządzenia mobilne (WP, Android i iOS).

  • Każda aplikacja może występować na kilku platformach, a każda platforma może posiadać wiele aplikacji.
  • Każde urządzenie ma przypisaną jedną platformę, a ta sama platforma może być przypisana do wielu urządzeń.
  • Każde urządzenie posiada wiele aplikacji, a każda aplikacja może być zainstalowana na wielu urządzeniach.
  • Aplikacje na urządzeniu mogą być zainstalowane jedynie jeśli występują na platformie używanej przez urządzenie.
    Problemem jest ostatni punkt. Czy istnieje możliwość takiego zaprojektowania tego schematu, aby przyszła tabela device_app była zabezpieczona przed wprowadzeniem aplikacji, która nie obsługuje platformy dostępnej na danym urządzeniu? Czy może jednak są potrzebne jakieś dodatkowe odpowiednio skonstruowane ograniczenia? W założeniu chodzi o to, by device_platform_id = platform_app_platform_id. Dopiero zaczynam przygodę z bazami, więc być może jest to banalne pytanie.

user image

1

ja bym zrobił tabelę z dwoma polami device_id i platform_id, gdzie były by wpisane dostępne kombinacje. Musisz wziąć pod uwagę, że nie powinno się takich danych zaszywać na stałe bo to się może zmienić.

Teraz tak jeśli koniecznie chcesz to sprawdzać po stronie bazy to ja bym dodał wyzwalacz przed insert i update i sprawdzał czy dodawana/zmieniana aplikacja ma odpowiednią kombinację platformy i urządzenia

0

Ok, dzięki za odpowiedź, szczególnie, że właśnie o taką mi chodziło.

1 użytkowników online, w tym zalogowanych: 0, gości: 1