Przymierzam się do rozpoczecia pisania włąsnego projektu i natrafiłem na pewnien problem, który przedstawie tutaj w uproszczeniu:
Mam dwie klasy: koła i kwadraty, które chciałym zapisać w bazie
Obie klasy posiadają takie wartości jak położenie (x, y), jednak oprócz tego kwadraty mają długość boku a koła średnicę.
Często będę potrzebował znać położenia i jednych i drugich natomiast wydaje mi się bezsensowne toworzenie tabeli zawierającej przemieszane atrybuty dla kół i kwadratów, zresztą o ile się nie myle prowadzi to do stworzenia tabeli w pierwszej postaci normalnej. Poza tym krotek będzie masa.
Oczywiście jak pisałem to uproszenie, takich klas do zapisania będzie dużo więcej i będą miały całą masę innych niewspólnych atrybutów, jednak będą i takie które pozostaną wspólne.
Jednym z pomysłów jest stworzenie poprostu osobnych tabel dla każdej z klas - co jest niewygodne bo kient musi pobrać dane ze wszystkich tabel i porównywać je u siebie (wspólne atrybuty).
Inny pomysł, mojego wykładowcy, zakłada stworzenie odpowiednich powiązań między tabelami

Takich powiązań między tabelami (na poziomie bazy danych) które przy np. próbie wyciągnięcia wszystkich informacji o krotce o #1, zidentyfikują ją jako 'typ: 1' (koło) i przekażą w odpowiedzi odpowiednie pola z tabeli 'typ 1'
Z grubsza zakładało to wykorzystanie procedur składowanych (?) ... i tyle z całego pomysł. Chociaż przy mojej, pobieżnej, wiedzy o procedurach skłądowych jakoś ciężko mi sobie to wyobrazić.
Dlatego mam:
Pytanie zerowe, jak można to wogóle sesownie zrealizować i czy pomysł przedstawiony przed chwilą ma ręce i nogi ?
Wstępnie całosć chciałbym stworzyć w oparciu o MySQL'a dlatego pierwsze moje pytanie brzmi: jeżeli pomysł ma ręce i nogi to jak wygląda możliwość stworzenia czegoś takiego pod MySQL właśnie ?
Drugie jeżeli nie MySQL, to co innego, bardziej nadającego się ?