일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 프로그래머스 문자열 정렬
- 백준 N과 M 자바
- 문자열
- Programmers
- 프로그래머스
- 백준
- 알고리즘
- 버퍼
- 스택
- lv2
- Queue
- COS Pro
- SWEA
- java
- Lv1
- 이진수 변환
- index of
- 스프링부트 도커 배포
- 프로그래머스 자바
- 프로그래머스 풀이
- 스프링부트 도커로 배포
- 스프링부트 도커
- 삼각형의 완성조건
- 클라이언트
- 오름차순 정렬
- 자바
- Stack
- lv0
- StringTokenizer
- 큐
- Today
- Total
목록DB/Oracle (25)
mun dev
For Update 란?Oracle 데이터베이스에서 사용되는 특별한 SQL구문이다. 이 구문은 SELECT 문장에서 사용되며, SELECT로 조회된 데이터에 대한 잠금(lock)을 설정하는 목적을 가진다. 주로 다음과 같은 경우에 사용된다. 1. 비관적 잠금(Pessimistic Locking)For update 구문을 사용하여 특정 데이터 행을 조회하고, 그 행에 대한 잠금을 설정한다. 이 잠금은 다른 트랜잭션이 같은 데이터를 수정하거나 삭제하는 것을 막아준다. 다만, 이 방식은 다수의 트랜잭션에서 동시에 같은 데이터에 접근할 때 성능에 영향을 줄 수 있다. 2. 커서 안정성(Cursor Stability)For update 구문을 사용하여 SELECT문에서 조회된 데이터에 대해 커서가 열린 상태..
Analytic Function Row들의 집합으로 Partition이라는 Result Set을 만들며 연산의 범위를 결정하기 위해 각각 Row들을 대상으로 Data Sliding Window를 구성 Analytic Function 수행 과정 Joins, Where, Group by, Having 등의 수행으로 Data를 추출 Analytic Function이 이용할 수 있는 Result Set 생성, Order by 절이 있다면 Order by를 수행하여 최종 Result Set 반환 User Defined Function을 정의하여 Over 절과 같이 사용가능 Analytic Function 예 select deptno, sum(sal) over (order by deptno) from emp; Ca..
함수(Function)이란? 보통 값을 계산하고 결과 값을 반환하기 위해서 함수를 많이 사용한다. 대부분 구성이 프로시저와 유사하지만 IN 파라미터만 사용할 수 있다. 반드시 반환될 값의 데이터 타입을 RETURN문에 선언해야 한다. 또한 PL/SQL 블록 내에서 RETURN문을 통해서 반드시 값을 반환해야 한다. 함수문법 -- PL/SQL 블록에는 적어도 한 개의 RETURN문이 있어야함 -- PL/SQL 블록은 함수가 수행할 내용을 정의한 몸체 부분 create or replace function function_name [(argument..)] return datatype -- datatype은 반환되는 값의 datatype입니다. is [변수 선언 부분] begin [PL/SQL BLOCK] -..
프로시저(PROCEDURE)란? 특정 작업을 수행하는, 이름이 있는 PL/SQL BLOCK이다. 매개 변수를 받을 수 있고, 반복적으로 사용할 수 있는 BLOCK이다. 보통 연속 실행 또는 구현이 복잡한 트랜잭션을 수행하는 PL SQL BLOCK을 데이터베이스에 저장하기 위해 생성한다. 프로시저 문법 create or replace 구문을 사용하여 생성 is로 PL/SQL의 블록을 시작 local변수는 is와 begin 사이에 선언 create or replace procedure name in argument out argument in out argument is [변수 선언] begin -- 필수 [PL/SQL BLOCK] -- SQL 문장, PL/SQL 제어 문장 [EXCEPTION] -- 선택 ..
PL/SQL이란? PL/SQL은 Oracle’s Procedural Language extension to SQL의 약자이다. SQL 문장에서 변수 정의, 조건처리(IF), 반복처리(LOOP, WHILE, FOR)등을 지원하며, 오라클 자체에 내장되어 있는 절차적 언어(Procedure Language)이다. DECLARE문을 이용하며 정의되며, 선언문의 사용은 선택 사항 PL/SQL문은 블록 구조로 되어 있고, PL/SQL 자신이 컴파일 엔진이 가지고 있다. PL/SQL BLOCK STRUCTURE PL/SQL은 프로그램을 논리적인 블록으로 나누는 구조화된 블록언어 PL/SQL 블록은 선언부(선택적), 실행부(필수적), 예외 처리부(선택적)으로 구성되어 있고, BEGIN과 END 키워드는 반드시 기술해..
1. 제약조건(CONSTRAINT) 제약조건은 결점 없이 정확하고 유효한 데이터가 데이터 베이스에 저장될 수 있도록 하기 위하여 데이터를 조작하는데 한계를 규정한 것 CONSTRAINT뒤에 제약조건 ID를 부여할 수 있다. CONSTRAINT를 생략할 시 제약ID를 자동으로 오라클 시스템에서 생성해준다 1) 테이블 생성시 제약조건 CONSTRAINT 제약id 제약내용(컬럼명); 2) 제약 변경 제약조건을 주지 않아 추가하거나, 제약 조건을 변경, 삭제 하는 경우 ALTER명령문을 이용하여 변경 가능 추가 ALTER TABLE 테이블명 ADD CONSTRAINT 제약이름 제약조건; 수정 ALTER TABLE 테이블명 MODIFY 컬럼조건; 삭제 ALTER TABLE 테이블명 DROP CONSTRAINT 제..
테이블 구조 변경 1) 컬럼 추가 추가된 컬럼의 마지막 부분에 생성 ALTER TABLE 테이블명 ADD(컬럼명 DataType); 2) 컬럼 변경 기존 컬럼에 데이터가 없는 경우 컬럼의 데이터 타입 변경이 자유로움 컬럼의 크기 변경이 자유로움 기존 컬럼에 데이터 존재하는 경우 데이터 타입 변경은 CHAR과 VARCHAR2만 가능 변경한 컬럼의 크기가 저장된 데이터의 크기보다 같거나 클 경우에만 가능 ALTER TABLE 테이블명 MODIFY (컬럼명 DataType); 3) 컬럼 제거 2개 이상의 컬럼을 가진 기존 테이블의 특정 컬럼과 컬럼의 데이터 삭제 가능 한 번의 하나의 컬러만 삭제 가능, 삭제된 컬럼은 복구 불가능 ALTER TABLE 테이블명 DROP COLUMN 컬럼명;
오라클에서 성적, 급여등 순위를 구하기 위해 순위 함수를 사용하면 된다. 순위 함수의 순위는 OVER 함수 내부의 ORDER BY 컬럼 값으로 결정된다. RANK() : 중복 순위 개수만큼 다음 순위 값을 증가시킴 DENSE_RANK(): 중복 순위가 존재해도 순차적으로 다음 순위 값을 표시함 SELECT ENAME, SAL, RANK() OVER(ORDER BY SAL DESC) RANK, DENSE_RANK() OVER(ORDER BY SAL DESC) DENSE_RANK FROM EMP ORDER BY SAL DESC; RANK는 2순위가 2명이므로 3순위를 건너뛰고 2순위 다음은 4순위로 표시 DENSE_RANK 함수는 2순위가 2명 이여도 다음 순위는 3순위로 표시 순위가 겹치지 않는다면 두 개..