💻 수업정리 (2020)/오라클

[6/25] 인라인뷰와 시퀀스, 권한 부여
--단순 뷰 생성 CREATE VIEW EMP_VIEW01 AS SELECT EMPNO,ENAME, JOB, SAL HIREDATE, SAL FROM EMP; --EMP_COPY테이블을 모든 사용자에 대한 접근 권한 미부여 --인사부 사원에게는 EMP_VIEW01 뷰에 대한 접근 권한 부여 SELECT * FROM EMP_VIEW01;--뷰를 생성하면 사용자에따라 주고싶은 데이터를 정해 줄 수 있음 📌 CREATE OR REPLACE VIEW 기존의 뷰를 제거하고 새로운 뷰를 생성하도록 한다. --EMP_VIEW30 뷰에 SAL컬럼 추가 - 뷰 구조 변경 불가능 : 기존 뷰를 제거하고 새로운 뷰 생성 --CREATE OR REPLACE 명령으로 기존 뷰를 제거하고 새로운 뷰를 생성 CREATE OR RE..

[6/19] 제약조건과 VIEW
[참고] --테이블 목록확인 --딕셔너리를 이용 SELECT TABLE_NAME FROM TABS; --TAB이라는 뷰를 이용 SELECT * FROM TAB; 📌[PK제약조건] 중복된 컬럼값 저장을 방지하기 위한 제약조건 테이블에서 하나의 컬럼에만 PRIMARY KEY를 설정할 수 있으며 NULL미허용 행을 대표하는 고유값을 저장하기 위한 컬럼에 PRIMARY KEY 제약조건 설정 1) 컬럼에 제약조건 주기 CREATE TABLE MAG1(NO NUMBER(4) CONSTRAINT MGR1_NO_PK PRIMARY KEY, NAME VARCHAR2(20), STARTDATE DATE); 2) 테이블에 제약조건 주기 CREATE TABLE MAG2(NO NUMBER(4),NAME VARCHAR2(20),..

[6/18] TCL과 TRANSATION
--제약조건을 확인할 수 있는 명령 SELECT CONSTRAINT_NAME, CONSTRAINT_TYPE FROM USER_CONSTRAINTS WHERE TABLE_NAME ='USER2'; [TCL] *트랜잭션 제어어 SQL명령이 저장된 트렌젝션을 실제 데이터베이스에 적용하거나 적용하지 않고 제거하는 명령 쉽게말하면, 잘못된 명령이나 데이터가 테이블에 들어가거나 삭제되는것을 방지하기 위해 있는 것이 트랜잭션이다. *트랜잭션 : 현재 세션에서 작성된 SQL명령을 처리하기 위한 작업단위 - SQL명령의 집합 *세션 : DBMS에 접속하여 SQL명령을 전달하여 실행할 수 있는 사용자의 작업환경(즉, 사용자마다 작업환경을 바꿀 수 있단 말임) TCL의 종류 COMMIT ROLLBACK SAVEPOINT 올..

[6/17] 오라클 서브쿼리
서브쿼리 : sql명령에 포함되어 실행되는 select명령 여러번의 sql명령으로 얻을 수 있는 결과를 하나의 sql명령으로 얻기위해 사용하는 기능 select(main쿼리) 명령에 포함되어 실행되는 select(서브쿼리)명령 서브쿼리 명령 실행 후 메인쿼리 명령 실행 메인쿼리 명령에서 서브뭐리 명령은 from, whrere, having구문에서 ( )안에 작성 WHERE구문에서 조건식의 비교값 대신 서브쿼리 명령의 검색값을 사용하여 검색 조건식의 비교대상과 같은 자료형의 값이 하나만 검색되도록 서브쿼리를 작성해야 한다. 단일행의 단일 검색값으로 비교 --EMP테이블에서 사원이름이 SCOTT인 사원보다 많은 급여를 받는 사원을 검색 --내가 처음에 틀리게 작성한 쿼리문 SELECT EMPNO, ENAME..

[6/16] 분석함수
[분석함수] 분석함수 윈도우 함수(그룹함수)에 의해 발생된 결과값을 제공받아 처리하여 반환하는 함수 - 그룹함수를 사용할 경우, 다른 검색대상을 선언하면 에러발생 - 그룹함수와 분석함수를 같이 사용할 경우 다른검색대상 선언 가능함 - GROUP BY 구문 대신 분석함수에 PARTITION BY 기능을 제공함 --GROUP BY 사용 불가 SELECT 윈도우함수 OVER ([PARTITION BY 컬럼명]) [ORDER BY 컬럼명] WINDOW,검색대상..... FROM 테이블명 [WHERE 검색조건] --PARTITION BY를 사용하면 그룹을 만들 수 있다. --오류발생 SELECT EMPNO, ENAME, SAL, DEPTNO, CEIL(AVG(SAL) OVER()) "부서별 평균급여" FROM E..