Witam, nie jestem orłem z MySQLu, a potrzebuję wygenerować pewien widok. Tworzę system do tworzenia kart magnetycznych. Na takiej karcie może być wiele różnych pól jak imię, nazwisko, pesel itd. Na każdej karcie tych pól może być dowolna liczba, więc wymyśliłem strukturę tabel w następujący sposób:
Szablony - główna tabela spajająca wszystko. Są tu ogólne informacje takie jak id_użytkownika, który stworzył szablon, czy karta jest dwustronna, pozioma, czy pionowa itd. Powiedzmy, że w uproszczeniu wygląda tak:
szablony
id_szablony
nazwa
szablony_karty - każdy szablon może mieć awers i rewers karty (lub tylko jedną stronę).
szablony_karty
id_szablony_karty
id_szablony (klucz obcy)
typ (awers/rewers)
szablony_obiekty - są to można powiedzieć kolumny dla widoku. To tutaj są przechowywane informacje o typach danych na kartach np. imię, kod_kreskowy, zdjęcie itp.
szablony_obiekty
id_szablony_obiekty
id_szablony_karty (klucz_obcy)
typ_obiektu
polozenie_na_osi_x
szerokosc
itp.
szablony_wiersze - o ile szablony_obiekty to można powiedzieć kolumny w widoku to szablony_wiersze to po prostu wiersze. Tabela grupująca dane z następnej tabeli.
szablony_wiersze
id_szablony_wiersze
id_szablony (klucz obcy)
szablony_dane - no i tutaj w końcu są właściwe dane. Każdy wiersz tutaj to dane, które powinny pojawić się na przecięciu szablony_obiekty z szablony_wiersze.
szablony_dane
id_szablony_dane
id_szablony_wiersze (klucz obcy)
id_szablony_obiekty (klucz obcy)
wartosc_danych
Teraz chciałbym stworzyć widok, za pomocą którego mógłbym w prosty sposób wyciągnąć wszystkie informacje o danych i obiektach np. SELECT * FROM szablony_widok WHERE id_szablonu=1 da mi
id_wiersza
typ_obiektu
szerokosc
polozenie_na_osi_x
wartosc_danych