0
내가 만든보기를 만들었습니다. 읽기 전용읽기 전용이 아닌보기를 만드는 방법
create view EMP_VU AS
select ename employee_name, deptno, empno
from emp
with READ ONLY CONSTRAINT EMP_VU_Read_ONLY;
어떻게 읽을 수 있습니까?
정보를보기에 삽입하려고 할 때이 오류가 발생하여 읽은 문제점 만 가정합니다.
SQL> insert into EMP_VU (employee_n,deptno, empno)
values (Stutte, 40, 8888);
values (Stutte, 40, 8888)
*
ERROR at line 2:
ORA-00984: column not allowed here
새로운 오류가 발생했습니다.
SQL> insert into EMP_VU (employee_name, deptno, empno)
values ('Stuttle', '40', '8888');
insert into EMP_VU (employee_name, deptno, empno)
*
ERROR at line 1:
ORA-00001: unique constraint (CIS605.EMP_EMPNO_PK) violated
Heres the View
SQL> select * from EMP_VU;
EMPLOYEE_N DEPTNO EMPNO
---------- ---------- ----------
KING 10 7839
BLAKE 30 7698
CLARK 10 7782
JONES 20 7566
MARTIN 30 7654
ALLEN 30 7499
TURNER 30 7844
JAMES 30 7900
WARD 30 7521
FORD 20 7902
SMITH 20 7369
EMPLOYEE_N DEPTNO EMPNO
---------- ---------- ----------
SCOTT 20 7788
ADAMS 20 7876
MILLER 10 7934
14 rows selected.
보기에 여전히 삽입 할 수 있습니다. – Randy
예, 읽기 전용으로보기를 사용하는 것이 좋습니다. 그러나 SQL Server에서는 View가 1 개의 테이블을 참조하는 경우에만 실제로 뷰에 데이터를 삽입 할 수 있습니다. 이것이 오라클의 경우인지 확실하지 않습니다. 어쨌든,이 경우의 문제는 "stutte"가 따옴표로 묶이지 않았기 때문에 문자열이 아니라 문자열이라고 생각하므로 "여기에서 허용되지 않는 열"오류가 발생합니다. –
제 질문은 읽기 전용이 아닌 방법이었습니다. – Randy