6238 Databaser Agenda/Views

From Teknologisk videncenter
Jump to: navigation, search

Views

Med Views kan vi gemme nogle af de lange select sætninger. I vores eksempel fra tidligere er det f.eks. forbundet med en del besvær at finde telefon nr og bilmærker for en sælger da det kræver to JOINs.

Ved at lave et View kan man gemme SELECT sætningen en gang for alle sådan her

Create View SaelgerView AS
SELECT MedarbNr,Navn,StartDato,Email,Nr AS TelefoonNr, RegNr AS Bil,Maerke,RegAar AS BilRegAar FROM Saelger
JOIN Bil ON Saelger.MedarbNr = bil.Saelger
JOIN TelefonNr ON TelefonNr.Saelger = Saelger.MedarbNr;

Efterfølgende gør man blot sådan for at anvende viewet

Select * from SaelgerView;

Resultatet

6238 Databaser Agenda SQL Views4.gif

Insert via View

Bemærk at et View kun giver et udtræk af databasens tabeller og ikke er en tabel i sig selv

Derfor er det normalt ikke muligt at anvende insert og delete på views, dog er der visse undtagelse hvor det er muligt, men det vil jeg ikke komme nærmere ind på i dette kursus.

Opgave

Lav views som viser Kunder incl. oplysninger om hvilken sælger de betjenes af og sælgerens navn og telefon nummer

Lav view som viser varer og hvilken kunde de købes af