Definicje tabel:
CREATE TABLE Pacjent
(
id_pacjenta integer PRIMARY KEY,
imie varchar2(50) NOT NULL,
nazwisko varchar2(50) NOT NULL,
data_urodzenia date NOT NULL,
pesel integer NOT NULL UNIQUE CHECK (pesel >= 0),
miasto varchar2(50) NOT NULL,
ulica varchar2(50) NOT NULL,
nr_budynku integer NOT NULL CHECK (nr_budynku >= 0),
nr_mieszkania integer CHECK (nr_mieszkania >= 0)
);
CREATE TABLE Lekarz
(
id_lekarza integer PRIMARY KEY,
imie varchar2(50) NOT NULL,
nazwisko varchar2(50) NOT NULL,
specjalizacja varchar2(50)
);
CREATE TABLE Recepta
(
id_recepty integer PRIMARY KEY,
id_pacjenta integer NOT NULL,
id_lekarza integer NOT NULL,
data_wystawienia date,
data_waznosci date,
FOREIGN KEY (id_pacjenta) REFERENCES Pacjent(id_pacjenta),
FOREIGN KEY (id_lekarza) REFERENCES Lekarz(id_lekarza)
);
Chciałbym stworzyć widok który będzie zawierał imiona i nazwiska pacjentów oraz imiona i nazwiska lekarzy, którzy wypisali im receptę. Coś takiego przyszło mi do głowy, ale nie działa:
CREATE VIEW v5
AS SELECT imie, nazwisko, imie, nazwisko, data_wystawienia, data_waznosci
FROM Pacjent
INNER JOIN Recepta
ON Pacjent.id_pacjenta=Recepta.id_pacjenta
INNER JOIN Lekarz
ON Lekarz.id_lekarza=Recepta.id_lekarza
Proszę o pomoc