본문 바로가기

전체 글115

데이터 베이스_ 오라클 VIEW [view 종류, 관리] 활용 5 with read only *뷰를 통해서는 기본 테이블의 어떤 컬럼에 대해서도 내용을 절대 변경할 수 없도록 하는 것이다. 문제_ 뷰를 작성할때 with read only를 부여하는 경우 (읽기전용 뷰) 수정 X (부서번호가 30번인 부서이름을 출력) => delete 해설_ 우선 수정이 가능한 뷰를 생성 SQL> create or replace view dept30 2 as select deptno,dname from dept 3 where deptno=30 4 with read only; //읽기 전용 뷰 옵션 뷰가 생성되었습니다. 추가해설_ delete from 뷰이름; // 테이블 대신에 사용 SQL> delete from dept30; delete from dept30 * 1행에 오류: ORA-42399: 읽기 전용 뷰에.. 2019. 7. 2.
데이터 베이스_ 오라클 VIEW [view 종류, 관리] 복합뷰 활용 4 DML을 목적으로한 뷰를 만드는 상황 문제_ 데이터를 입력하는데 id 값이 100 이하인 경우에만 입력을 허용 해주는 뷰를 작성하라(v_test1) 해설_ 보통 id값은 id>=1 SQL> create table test1(id number); 테이블이 생성되었습니다. SQL> insert into test1 values(1); // 데이터가 들어갔는지 확인하는 구문 데이터 삽입함! 1 개의 행이 만들어졌습니다. SQL> create view v_test1 2 as select * from test1 where id insert into v_test1 values(2); 1 개의 행이 만들어졌습니다. SQL> insert into v_test1 values(3); 1 개의 행이 만들어졌습니다. SQL> .. 2019. 7. 2.
데이터 베이스_ 오라클 VIEW [view 종류, 관리] 단순뷰 1편 오라클의 view 는 단순뷰, 복합뷰로 나뉘어집니다. **중요** 단순뷰 = 하나의 테이블로 만들어진 뷰로 DML이 가능합니다. 그룹함수, distinct 사용이 불가합니다. 복합뷰 = 여러개의 테이블로 만들어진 뷰입니다. 예를 들면 Join 이 될수가 있지요 하지만 DML이 불가능합니다. 그룹함수, distinct 사용이 가능합니다. 단순뷰 복합뷰 하나의 테이블로 생성 여러개의 테이블로 생성 그룹 함수의 사용이 불가능 그룹함수의 사용이 가능 distinct 사용이 불가능 distinct 사용이 가능 DML 사용이 가능 DML 사용이 불가능 단순뷰는 DML이 가능하다 하지만 예외 조항이있다. 1. delete가 안되는 경우 공통=> {그룹함수를 사용하거나, group by, distinct를 사용한 경우.. 2019. 7. 2.
데이터 베이스_ 오라클 VIEW [view 종류, 관리] 복합뷰 활용 3 뷰(view)를 통해서 제약조건을 줄 수가 있다. 단 반드시 옵션을 주어야한다. [with check option] 옵션, 사용할지 말지 선택하는 옵션이다. 해당 옵션은 맨 뒤에 붙인다. 바로! 나갑니다ㅎㅎ 문제_ emp 테이블을 복사하여 미리 만들어 놓은 b_emp5 테이블을 이용 emp30(30번 부서만 가진) 뷰를 작성하여라. 단 뒤에 with check option을 부여해서 작성하시오. (모든 정보를 부여줄것 * ) 해설_ ~ with check option constraint 제약조건이름; create or replace view emp30 2 as select * from b_emp5 3 where deptno=30 4 with check option constraint emp30_ck; /.. 2019. 7. 2.
데이터 베이스_ 오라클 VIEW [view 종류, 관리] 복합뷰 활용 2 서브쿼리 저번 시간엔 복합뷰 + 조인 을 활용하여 코드를 작성하였다 이번 시간에는 복합뷰 + 서브쿼리를 활용하여 코드를 작성해보려 한다. 문제_ SMITH 보다 많은 급여를 받는 사원의 이름, 급여, 부서번호를 조회 할 수 있는 SQL 구문을 작성하시오. (단 뷰의 이름은 V_SMITH, 경우에 따라서는 뷰의 내용도 수정할 수 있도록 한다.) 해설_ 참고 {필자가 중간에 한번 오타가 나서 ed로 편집하여 출력하였다.] 1 create or replace view v_smith 2 as select ename, sal, deptno 3 from emp 4* where sal > (select sal from emp where ename='SMITH') SQL> / 뷰가 생성되었습니다. SQL> select * fr.. 2019. 7. 2.
데이터 베이스_ 오라클 VIEW [view 종류, 관리] 복합뷰 활용 1 조인 데이터 베이스, VIEW 에서의 복합뷰는 JOIN 그리고 서브 쿼리를 이야기 하는것이다. 해당 방식은 편리성을 추구하는것이고, 여러개의 테이블이다보니 DML 이 적용이 안됨. 그리고 복합뷰는 조인, 서브쿼리를 모른다면 할수없는 구조다. 반드시 숙지해야한다! 조인 그리고 서브쿼리 복합뷰는 조인을 활용하여 작성할수 있다. 여기서 문제_ 사원의 이름과 부서명을 출력시켜주는 뷰를 작성하라 뷰의 이름은 (v_dname) ename dname 해설_ SQL> create or replace view v_dname 2 as select e.ename,d.dname 3 from emp e, dept d 4 where e.deptno = d.deptno; 뷰가 생성되었습니다. SQL> select * from v_dna.. 2019. 7. 2.