PL/SQL (피엘에스큐엘)

PL/SQL(피엘에스큐엘)은

오라클 DBMS에서

SQL 언어를 확장하기 위해

사용하는 컴퓨터 프로그래밍 언어

 

SQL 명령문만으로 처리하기에는

복잡한 프로세스를 처리해야해서이것들을 씀

함수
프로시저
트리거

주요 자료형

NUMBER, CHAR, VARCHAR2, DATE, TIMESTAMP가 있다.

 

절차적 언어이다. 

 

예외 처리 가능

 

블록 단위의 실행.

이를 위해 BEGIN과 END를 사용.

 

변수선언은 Decalre절에서만 가능

 

주요 기능 3

1. IF문으로 분기가능

2. Loop문으로 반복가능

3. 커서를 이용하여 여러행 검색,처리

 

SELECT문은 해당 SELECT의 결과를 PL/SQL Engine으로 보낸다.  

SQL에서  받으려면 변수를 DECLARE해야 하고,

INTO절을 꼭 선언하여 넣을 변수를 꼭 표현해주어야 한다.

 

SELECT 문장은 반드시 한 개의 행이 검색되어야 한다.   

그리고 이를 INTO절을 꼭 사용,

검색되는 행이 없으면 문제가 발생한다.

 

구조

 DECLARE (선언부)

모든 변수나 상수를 선언하는 부분으로서 DECLARE로 시작

 BEGIN (실행부)

절차적 형식, BEGIN으로 시작

제어문, 반복문, 함수 정의 등 로직을 기술할수있는 부분

 

 EXCEPTION (예외 처리부)

실행중 예외 사항처리

 

 END (실행문 종료)

END;

 

블록 내에서 한문장이 종료할때마다

세미콜론(;)을 사용하여 한문장이 끝났다는것을 명시한다.

 

 

 

 

 

 

 

 

 

 

 

 

 

맨날 %로 검색만 하다보니 예전에 배웠는데 까먹은 것이 있었다.

 

글자수까지 포함해서 검색이 가능하다는것

 

예) NAME :

손자병볍

손흥민

손자

 

검색: 손으로 시작하는 3글자를 찾아라

 

WHERE NAME LIKE '손__' --(언더바 두개 넣음)

 

이렇게 하면 

 

*결과:손흥민

이런식으로 응용하면 굉장히 편리

 

WHERE NAME LIKE '손자__' --(언더바 두개 넣음)

 

이러면 

 

*결과: 손자병법

노트패드++ 에 왼쪽 디렉토리 영역이 안보일때!

 

 

 

기본기능은 아니고 플러그인으로 확장해서 설치해줘야한다.

 

이미 설치되어 있는 경우엔 설정만 하면된다.

설치가 안되어 있으면 Explorer를 검색해서 설치해준다.

 

설치가 된경우 이렇게 설치된 플러그인이 표시된다.

설치가 끝났으면 플러그인에 Explorer에서 체크해주면 끝

 

L4 로드밸런싱은 Layer 4(TCP와 UDP)에서 IP와 Port를 활용하여

서버부하분산을 하는 것을 의미

 

적합한 Virutal Server IP와 Port를 목적지로 들어온다면 골고루 서버에 부하 분산합니다.

 

<F5 Networks의 L4 Virtual Server Protocol 정의>

TCP를 사용할 경우 사용자와 서버가 논리적인 Connection(이하 커넥션)을 맺을 수 있도록 중간자의 입장에서

3-way handshake 실시를 지원합니다.

 

사용자와 서버가 생성하여 던지는 SYN, SYN/ACK, ACK Flag Packet을 순서대로 전달하죠.

 

'3-way handshake 실시를 지원한다'는 모호한 표현을 쓴 이유는 F5 Networks Switch처럼 3-way handshake에

 

적극적으로 개입할 수 있는 L4 스위치도 있지만

 

매우 소극적으로 IP와 Port를 활용한 로드밸런싱 / 커넥션 생성만 하는 L4 스위치도 존재하기 때문입니다.

 

 

로드밸런싱의 기준점이 IP와 Port이기 때문에 TCP/UDP의 Header를 분석하여 로드밸런싱에 활용하지는 않습니다. 

 

그래서 프로토콜 헤더를 통해 로드밸런싱하기보다 해당 프로토콜들의 특성으로 인한 행동을 제어하는 편입니다.

 

예를 들어 3-way handshake를 제어하거나 커넥션을 언제 끊을 것인지, 커넥션을 얼마나 유지할 것인지,

Connection Time out에 도달하면 어떻게 할 것인지 등을 제어합니다. 

 

이처럼 L4 로드밸런싱은 IP와 Port를 활용해 부하분산을 실시하는 것을 의미하며

 

TCP / UDP의 특징을 활용한 그 밖의 부가 행동에 초점이 맞추어져 있음을 알 수 있습니다.

+ Recent posts