Virtual Table - Simple View - Complex View - Advantage: Document Prepared by
Virtual Table - Simple View - Complex View - Advantage: Document Prepared by
VIEW
IT IS A LOGIGAL REPRESENTETION OF SUBSET OF DATA FROM ONE OR MORE TABLE IT CAN NOT CONTAIN DATA OF ITS OWN BUT IT IS ACT AS WINDOW TO ACCESS THE DATA FROM THE BASE TASE TABLES. IT CAN BE VIEWED OR CHANGED.
DIFFERENCE BETWEEN SIMPLE VIEW AND COMPLEX VIEW SIMPLE VIEW COMPLEX VIEW
DATA FROM SINGLE TABLE HERE WE CANT USE GROUP FUNCTIONS (e.g. min, max, sum etc..,)
SELECT E.EMPLOYEE_ID, E.FIRST_NAME, E.SALARY, E.DEPARTMENT_ID, D.DEPARTMENT_NAME, D.LOCATION_ID, L.CITY FROM EMPLOYEES E, LOCATIONS L, DEPARTMENTS D WHERE E.DEPARTMENT_ID = D.DEPARTMENT_ID AND D.LOCATION_ID = L.LOCATION_ID AND (E.EMPLOYEE_ID BETWEEN 100 AND 107);
SYNTAX FOR CREATING A VIEW CREATE VIEW VIEW_NAME AS [SIMPLE OR COMPLEX QUERY]
CREATE VIEW EMP_DETAILS AS SELECT E.EMPLOYEE_ID, E.FIRST_NAME, E.SALARY, E.DEPARTMENT_ID, D.DEPARTMENT_NAME, D.LOCATION_ID,L.CITY FROM EMPLOYEES E,LOCATIONS L, DEPARTMENTS D WHERE E.DEPARTMENT_ID = D.DEPARTMENT_ID AND D.LOCATION_ID = L.LOCATION_ID AND (E.EMPLOYEE_ID BETWEEN 100 AND 107);
Updating a VIEW
SYNTAX FOR CREATING A VIEW CREATE OR REPLACE VIEW VIEW_NAME AS [SIMPLE OR COMPLEX QUERY]
HERE WE UPDATE THE CREATED VIEW BY CHANGING ITS RANGE IN THE WHERE CLAUS
CREATE OR REPLACE VIEW EMP_DETAILS AS SELECT E.EMPLOYEE_ID, E.FIRST_NAME, E.SALARY, E.DEPARTMENT_ID, D.DEPARTMENT_NAME, D.LOCATION_ID,L.CITY FROM EMPLOYEES E, LOCATIONS L, DEPARTMENTS D WHERE E.DEPARTMENT_ID = D.DEPARTMENT_ID
ADVANTAGE: 1. To restrict the data access 2. To make the complex query easy 3. We can provide different view for the same data.
We can perform dml (insert, update, delete, and merge) operations on the simple view If you insert one row of record into view means it will inserted in to base table If you insert the selected no of columns means remaining values are inserted as null (if it is not set as primary key, not null and unique identifier)
CREATE OR REPLACE VIEW VIEW_NAME AS [SIMPLE OR COMPLEX QUERY] WITH READ ONLY; If you create a view with this keyword means the user cant have any chance to perform any operation on that.