Oracle
 sql >> Baza danych >  >> RDS >> Oracle

widoki Oracle i ruch w sieci

Cytat mówi o E-Business Suite, a konkretnie o tym, jak budować aplikacje EBS (czyli formularze) w sposób wydajny. Właściwy kontekst jest następujący:

Weźmy taki scenariusz:mamy tabelę z wieloma kolumnami, w tym trzema, które są kluczami obcymi do tabel odnośników. Chcemy wyświetlić dane z tej tabeli w formularzu. Aby być przyjaznym dla użytkownika, nasz formularz musi pokazywać znaczenia z tabel przeglądowych, a nie kody z tabeli głównej. Wykonanie pojedynczego zapytania łączącego się z tabelami referencyjnymi jest bardziej wydajne niż wykonanie czterech zapytań. Ponieważ ruch sieciowy i inne względy.

Powinniśmy więc zbudować blok danych formularza na widoku, który łączy wszystkie cztery tabele, zamiast budować go tylko na głównej tabeli i używać wyzwalaczy Post-Query do wydawania trzech oddzielnych zapytań, które pobierają opisy kodów. Jest to szczególnie istotne w przypadku bloków wielowierszowych:zdecydowanie chcemy uniknąć wydawania kilku zapytań dla każdego zwróconego rekordu.

Chociaż kontekstem cytatu jest Oracle Forms, punkt ten dotyczy większości aplikacji do pobierania danych. Chociaż podejrzewam, że w dzisiejszych czasach użycie kursora referencyjnego do przekazania zestawu wyników jest bardziej popularnym rozwiązaniem niż korzystanie z widoków.

tl;dr

Jest to stwierdzenie dotyczące projektowania aplikacji, a nie optymalizacji bazy danych




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak deklarować i używać zmiennych w PL/SQL, tak jak robię to w T-SQL?

  2. Historia rekordów Oracle przy użyciu sygnatury czasowej w zakresie

  3. Połącz Sys jako Sysdba:Niewystarczające uprawnienia

  4. Dostrajanie instrukcji SQL w programie SQL Developer

  5. Wstawianie daty z java do Oracle DB