/* \i 'H:\\Linguaggi_1\\PostgreSQL\\Prove4B_Viste_CreaView.sql' */ /* VISTE. */ \c prove4 CREATE VIEW VISTA1(IdeTabePrinci, N, IdeTabeVinco) AS ( SELECT TABE_PRINCI.*, TABE_VINCO.IdeTabeVinco FROM TABE_PRINCI JOIN TABE_VINCO ON TABE_PRINCI.IdeTabePrinci = TABE_VINCO.IdeTabePrinci ); /* In caso di esecuzione ripetuta, c'e` ERRORE: la relazione "vista" esiste giĆ  */ \qecho '\nVista VISTA1' SELECT * FROM VISTA1; CREATE TEMP VIEW VISTA2_TEMPORANEA(IdeTabePrinci, N, IdeTabeVinco) AS ( SELECT TABE_PRINCI.*, TABE_VINCO.IdeTabeVinco FROM TABE_PRINCI JOIN TABE_VINCO ON TABE_PRINCI.IdeTabePrinci = TABE_VINCO.IdeTabePrinci ); /* Anche in caso di esecuzione ripetuta, non ci sono errori. */ \qecho '\nVista VISTA2_TEMPORANEA' SELECT * FROM VISTA2_TEMPORANEA; \dv INSERT INTO TABE_PRINCI VALUES ('F', 11); INSERT INTO TABE_VINCO VALUES (5, 'F'); INSERT INTO TABE_VINCO VALUES (6, 'B'); \qecho '\nVista VISTA1' SELECT * FROM VISTA1; \qecho 'Vista VISTA2_TEMPORANEA' SELECT * FROM VISTA2_TEMPORANEA;