CREATE VIEW
The view is a virtual table in Oracle with no physical existence as such and thus it does not store any data. The view is saved in the data dictionary of the Oracle and when called, it can be simply executed.
Syntax:
CREATE VIEW name AS SELECT column_1, column_2, column_3,...... FROM table WHERE view_conditions;
Parameters:
name: It is used to specify the name of the Oracle VIEW to be created.
Example:
Students table:
CREATE TABLE "STUDENTS" ( "STUDENT_ID" NUMBER, "STUDENT_NAME" VARCHAR2(100), "STUDENT_AGE" VARCHAR2(50)) |
Teachers table:
CREATE TABLE "TEACHERS" ( "TEACHER_ID" NUMBER, "TEACHER_NAME" VARCHAR2(100), "TEACHER_AGE" VARCHAR2(50)) |
Create View Query:
CREATE VIEW stu_teach AS SELECT students.student_id, students.student_age, teachers.teacher_name FROM students INNER JOIN teachers ON students.student_id = student_id WHERE students.student_name = 'VOJO'; |
Output:
View created.
0.21 seconds
Explanation:
A query joining one or more than one table is used to create a view. Here we are considering two tables, namely, students and teachers. The above query is then executed to create a view called stu_teach. In order to check the Oracle VIEW stu_teach, another query needs to be executed.
SELECT * FROM stu_teach; |
Output:
STUDENT_ID | STUDENT_AGE | TEACHER_NAME |
1 | 10 | SIMRAN |
2 | 12 | SMITA |
3 | 15 | SHWETA |
4 | 9 | SHAURYA |
Oracle Update VIEW:
The CREATE OR REPLACE VIEW statement is facilitated by the Oracle to modify the definition without dropping of an Oracle VIEW.
Syntax:
CREATE OR REPLACE VIEW name AS SELECT column_1, column_2, column_3,...... FROM table WHERE view_conditions;
Parameters:
name: It is used to specify the name of the Oracle VIEW to be modified.
Example:
CREATE or REPLACE VIEW sup_orders AS CREATE VIEW stu_teach AS SELECT students.student_id, students.student_age, teachers.teacher_name FROM students INNER JOIN teachers ON students.student_id = student_id WHERE students.student_name = 'HCL'; |
Explanation:
A query joining one or more than one table is used to update the definition of a view. Here we are considering two tables, namely, students and teachers. The above query is then executed to update the definition of VIEW called stu_teach. In order to check the Oracle VIEW stu_teach, another query needs to be executed.
SELECT * FROM stu_teach;
Output:
STUDENT_ID | STUDENT_AGE | TEACHER_NAME |
1 | 10 | SIMRAN |
2 | 12 | SMITA |
3 | 15 | SHWETA |
4 | 9 | SHAURYA |
Oracle DROP VIEW
To entirely remove or delete an Oracle VIEW, the DROP VIEW statement is used.
Syntax:
DROP VIEW name;
Parameters:
name:
It is used to specify the name of the Oracle VIEW to be deleted.
Example:
DROP VIEW stu_teach;
Explanation:
In order to delete or remove the Oracle VIEW stu_teach, the above query needs to be executed. After the execution the Oracle VIEW stu_teach, will be completely deleted from the data dictionary of the Oracle.