Performing an INSERT Using a View
You can perform DML statements one simple view. Simple view has only one base table. Complex views which have more than one base tables don't support DML.
CREATE TABLE EMP (EMPNO NUMBER(4) NOT NULL,
ENAME VARCHAR2(10),
JOB VARCHAR2(9),
SAL NUMBER(7, 2),
DEPTNO NUMBER(2));
INSERT INTO EMP VALUES (1, 'SMITH', 'CLERK', 800, 20);
INSERT INTO EMP VALUES (2, 'ALLEN', 'SALESMAN', 1600, 30);
INSERT INTO EMP VALUES (3, 'WARD', 'SALESMAN', 1250, 30);
INSERT INTO EMP VALUES (4, 'JONES', 'MANAGER', 2975, 20);
INSERT INTO EMP VALUES (5, 'MARTIN','SALESMAN', 1250, 30);
INSERT INTO EMP VALUES (6, 'BLAKE', 'MANAGER', 2850, 30);
INSERT INTO EMP VALUES (7, 'CLARK', 'MANAGER', 2850, 10);
INSERT INTO EMP VALUES (8, 'SCOTT', 'ANALYST', 3000, 20);
INSERT INTO EMP VALUES (9, 'KING', 'PRESIDENT',3000, 10);
INSERT INTO EMP VALUES (10,'TURNER','SALESMAN', 1500, 30);
INSERT INTO EMP VALUES (11,'ADAMS', 'CLERK', 1500, 20);
SQL> CREATE VIEW emp_five AS
2 SELECT *
3 FROM emp
4 WHERE empno < 5;
View created.
SQL>
SQL> INSERT INTO emp_five (empno, ename) VALUES (1, 'Front');
1 row created.
SQL>
SQL> SELECT *
2 FROM emp_five;
EMPNO ENAME JOB SAL DEPTNO
---------- ---------- --------- ---------- ----------
1 SMITH CLERK 800 20
2 ALLEN SALESMAN 1600 30
3 WARD SALESMAN 1250 30
4 JONES MANAGER 2975 20
1 Front
SQL>
Home »
Oracle »
Table »
Oracle »
Table »
Views:
- Creating and Using a View
- Creating and Using Simple Views
- Performing an INSERT Using a View
- A View with a CHECK OPTION Constraint
- View with a READ ONLY Constraint
- Getting Information on View Definitions with DESCRIBE command
- Getting Information on View Definitions with user_views view
- Retrieving Information on View Constraints
- Creating and Using Complex Views
- Modifying a View
- Alter the constraints on a view using ALTER VIEW
- Dropping a View
Related: