Skip to main content

Kontrol af datatilgang med visninger i SQL

Find ud af mere om gulvafslibning og gulvbehandling del-5 (April 2024)

Find ud af mere om gulvafslibning og gulvbehandling del-5 (April 2024)
Anonim

Databasevisninger giver dig mulighed for nemt at reducere kompleksiteten af ​​slutbrugeroplevelsen og begrænse deres evne til at få adgang til data indeholdt i databasetabeller ved at begrænse de data, der præsenteres for slutbrugeren. I det væsentlige bruger en visning resultaterne af en database forespørgsel til dynamisk at fylde indholdet af en kunstig database tabel.

Hvorfor bruge visninger?

Der er to primære grunde til at give brugerne adgang til data gennem visninger snarere end at give dem direkte adgang til databasetabeller:

  • Udsigten giver enkel, granulær sikkerhed. Du kan bruge en visning til at begrænse de data, som en bruger har lov til at se i en tabel. Hvis du f.eks. Har en medarbejderbord og ønsker at give nogle brugere adgang til optegnelserne over fuldtidsansatte, kan du oprette en visning, der kun indeholder de pågældende poster. Dette er meget nemmere end alternativet (oprettelse og vedligeholdelse af et skyggebord) og sikrer dataintegriteten.
  • Visninger forenkler brugeroplevelsen. Visninger skjul komplekse detaljer i dine database tabeller fra slutbrugere, der ikke behøver at se dem. Hvis en bruger dumper indholdet af en visning, vil de ikke se tabelkolonnerne, som ikke vælges af visningen, og de kan muligvis ikke forstå det. Dette beskytter dem mod forvirring forårsaget af dårligt navngivne kolonner, unikke identifikatorer og bordtaster.

Oprettelse af en visning

Oprettelse af en visning er ret ligetil: du skal blot oprette en forespørgsel, der indeholder de begrænsninger, du vil håndhæve, og placere den inde i CREATE VIEW-kommandoen. Her er syntaxen:

CREATE VIEW visningsnavn AS

For eksempel, hvis du ønsker at oprette den fuldtidsansatte visning, jeg diskuterede i det foregående afsnit, vil du udstede følgende kommando:

CREATE VIEW fuldtids ASVÆLG first_name, last_name, employee_idFRA medarbejdereHvor status = 'ft'

Ændring af en visning

Ændring af indholdet af en visning bruger nøjagtig samme syntaks som oprettelsen af ​​en visning, men du bruger kommandoen ALTER VIEW i stedet for kommandoen CREATE VIEW. Hvis du f.eks. Ville tilføje en begrænsning til den fuldtidsvisning, der tilføjer medarbejderens telefonnummer til resultaterne, vil du udstede følgende kommando:

ALTER VIEW fuldtids ASVÆLG first_name, last_name, employee_id, telefonFRA medarbejdereHvor status = 'ft'

Sletning af en visning

Det er nemt at fjerne en visning fra en database ved hjælp af kommandoen DROP VIEW. Hvis du f.eks. Vil slette fuldtidsansattevisningen, vil du bruge følgende kommando:

DROP VIEW fuldtids