Skip to main content

Контрол на достъпа до данни с изгледи в SQL

Evolution Vs. God Movie (Април 2025)

Evolution Vs. God Movie (Април 2025)
Anonim

Изгледите на базата данни ви позволяват лесно да намалите сложността на опита на крайния потребител и да ограничите възможността им за достъп до данни, съдържащи се в таблиците на базата данни, като ограничите данните, представени на крайния потребител. По същество изгледът използва резултатите от заявката на база данни за динамично попълване на съдържанието на таблица на изкуствена база данни.

Защо да използваме изгледи?

Има две основни причини да предоставят на потребителите достъп до данните чрез изгледи, вместо да им предоставят директен достъп до таблици на базата данни:

  • Изгледите осигуряват проста, гранулирана сигурност, Можете да използвате изглед, за да ограничите данните, които даден потребител може да вижда в таблица. Ако например имате таблица за служители и искате да предоставите на някои потребители достъп до записите на служители на пълно работно време, можете да създадете изглед, който съдържа само тези записи. Това е много по-лесно от алтернативата (създаване и поддържане на таблица в сянка) и гарантира целостта на данните.
  • Изгледите опростяват практическата работа на потребителите, Изгледите скриват сложни подробности за таблиците на базата данни от крайните потребители, които не е нужно да ги виждат. Ако потребителят изхвърли съдържанието на изгледа, той няма да види колоните в таблицата, които не са избрани от екрана и те може да не разбират. Това ги предпазва от объркване, причинено от лошо назовани колони, уникални идентификатори и таблични ключове.

Създаване на изглед

Създаването на изглед е съвсем очевидно: просто трябва да създадете заявка, която съдържа ограниченията, които искате да приложите, и да я поставите в командата CREATE VIEW. Ето синтаксиса:

CREATE VIEW viewname AS

Например, ако искате да създадете изгледа на служителите на пълен работен ден, който съм обсъждал в предходната секция, бихте издали следната команда:

CREATE VIEW пълно работно време ASSELECT първото име, последното име, employee_idОТ служителитеWHERE статус = "FT"

Промяна на изгледа

Промяната на съдържанието на изглед използва точно същия синтаксис като създаването на изглед, но използвате командата ALTER VIEW вместо командата CREATE VIEW. Ако например искате да добавите ограничение към изгледа на пълно работно време, който добавя телефонния номер на служителя към резултатите, бихте издали следната команда:

ALTER VIEW пълно работно време ASSELECT first_name, last_name, employee_id, телефонОТ служителитеWHERE статус = "FT"

Изтриване на изглед

Просто е да премахнете изглед от база данни, като използвате командата DROP VIEW. Ако например искате да изтриете изгледа на служителите на пълен работен ден, ще използвате следната команда:

DROP VIEW на пълно работно време