Oracle
 sql >> база данни >  >> RDS >> Oracle

Какво е изглед в Oracle?

Изглед в Oracle а в други системи за бази данни е просто представяне на SQL израз, който се съхранява в паметта, за да може лесно да се използва повторно. Например, ако често задаваме следната заявка

SELECT customerid, customername FROM customers WHERE countryid='US';

За да създадете изглед, използвайте командата CREATE VIEW както се вижда в този пример

CREATE VIEW view_uscustomers
AS
SELECT customerid, customername FROM customers WHERE countryid='US';

Тази команда създава нов изглед, наречен view_uscustomers. Обърнете внимание, че тази команда изобщо не води до действително съхраняване на нищо в базата данни с изключение на запис в речника на данни, който дефинира този изглед. Това означава, че всеки път, когато заявявате този изглед, Oracle трябва да излезе и да изпълни изгледа и да запита данните от базата данни. Можем да направим заявка за изгледа по следния начин:

SELECT * FROM view_uscustomers WHERE customerid BETWEEN 100 AND 200;

И Oracle ще трансформира заявката в това:

SELECT * 
FROM (select customerid, customername from customers WHERE countryid='US') 
WHERE customerid BETWEEN 100 AND 200

Предимства от използването на Views

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

Можете да намерите разширени теми в тази статия за "Как да създавате и управлявате изгледи в Oracle."



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Еквивалентни ли са изразът CASE и DECODE?

  2. как да проверите всички ограничения на таблица в oracle

  3. Има ли начин да се даде удобно за потребителя съобщение за грешка при нарушение на ограничението

  4. Oracle Live SQL

  5. SQL грешка ORA-01722:невалиден номер