![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 68 Pomógł: 0 Dołączył: 10.07.2003 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
Robie projekt bazy danych, tzn. juz zrobilem i gdzies tam po drodze pojawila mi sie hierarchia. Generalizacja to Plyta, ktora pod soba ma kilka specjalizacji. Jedna z nich jest Audio. Tworze to tak:
[sql:1:3cd461e388]CREATE TABLE Plyty ( IDPlyty smallint IDENTITY(1,1) PRIMARY KEY, TytulPlyty varchar(50) NOT NULL, Kategoria varchar(20) NOT NULL, Nosniki varchar(10) NOT NULL FOREIGN KEY REFERENCES Nosniki(TypNosnika), Stany varchar(10) NOT NULL FOREIGN KEY REFERENCES Stany(Stan) ) CREATE TABLE Audio ( IDPlyty smallint IDENTITY(1,1) PRIMARY KEY, Wykonawca varchar(50) NOT NULL, RokWydania varchar(4) NULL CHECK (RokWydania LIKE '[1-2][0-9][0-9][0-9]'), Wytwornia varchar(50) NULL, SpisUtworow text NULL, GatunkiMuzyczne varchar(30) NOT NULL FOREIGN KEY REFERENCES GatunkiMuzyczne(Gatunek) )[/sql:1:3cd461e388] A problem mam taki, ze gdy teraz chce dodac wpis do Audio to nie wiem jak dodac Tytul, ktory jest juz w generalizacji :|. Probowalem przez jakis nieudolny inner join, ale oczywiscie dostalem blad :|. No i moje pytanie. Jak dodawac takie dane do bazy kiedy jedna czesc jest w jednej tabeli a druga w drugiej? Czy musze dodac np. do Plyty informacje o tej plycie, a potem ja "doedytowac" w Audio? -------------------- "Jedyną pewną metodą unikania porażek jest nie mieć żadnych, nowych pomysłów."
Albert Einstein |
|
|
![]() ![]() |
![]() |
Aktualny czas: 20.08.2025 - 05:56 |