주니어 기초 코딩공부/Database 기초

03. SQL과 SQL*PLUS의 개념

jju_developer 2022. 12. 13. 14:37
728x90

안녕하세요 jju_developer입니다.

 

오늘은 지난 시간의 SQL의 설명에 이어서 SQL의 기본에 대해 소개하는 시간을 갖겠습니다.

 

✔SQL과 SQL*PLUS의 차이점

SQL SQL*Plus
관계형 데이터베이스의 ANSI 표준 언어     SQL 문을 실행 시킬 수 있는 오라클의 툴 
여러 줄 실행 한줄 실행 종결문자(;) 필요 종결문자 불필요 
연결문자 불필요  연결문자(-) 필요
키워드 단축 불가 키워드 단축 가능
 퍼에 마지막 명령문 저장  버퍼 저장 안함

지난 시간에 배운 SQL은 관계형 데이터베이스의 ANSI에서 정한 표준 언어이며,

각 회사에서 SQL을 기준으로 조금씩 변화하여 RDBMS를 만들었습니다.

SQL*Plus는 SQL문을 실행시키고 그 결과를 볼 수 있도록 Oracle에서 제공하는 툴이다.

 

 

✔SQL*PLUS의 명령문

no SQL*Plus 명령어 (약어) 설명
1 LIST (L) 버퍼에 저장된 모든 SQL문 또는 검색한 라인의 SQL문을 나타낸다.
2 / SQL문을 보여 주지 않고 바로 실행
3 RUN (R) 버퍼에 저장된 SQL 문을 보여주고 실행한다.

 

 

✔SQL*PLUS의 파일 명령어

no SQL*Plus 파일 명령어(약어) 설명
1 EDIT (ED) 파일의 내용을 유닉스나, 윈도우즈 같은 에디터로 읽어 편집할 수 있도록 합니다. (vi, notepad)

*SQL은 파일의 내용을 메모장에서 쉽게 편집할 수 있도록 합니다.
✔주의할점은 SQL 버퍼를 편집기로 열었을때 명령어문 끝에 붙였던 ; 가 편집화면에서는 /로 대체된다는 점 입니다.
2 HOST 오라클을 종료하지 않고 OS 명령을 수행 할 수 있도록 OS 환경으로 잠시 빠져 나갈 수 있도록 합니다.
OS Prompt 상에서 Exit을 하면 다시 오라클 환경으로 돌아옵니다.

*SQL 명령문이 저장된 버퍼는 파일 형태입니다. 
파일 이름은 "afiedt.buf" 입니다.

오라클을 종료하지 않고 DOS 명령어인 dir을 사용하여 해당 파일이 존재하는 것을 확인하려면 DOS 환경으로 나가는 HOST 명령어를 사용합니다.
3 SAVE SQL 버퍼 내의 현재 내용을 실제 파일로 저장합니다.

*SQL*Plus 에서는 사용자가 가장 최근에 수행한 쿼리문을 파일로 저장할 수 있도록 하는 SAVE 명령어를 제공한다.

SQL문 자체를 저장합니다.
4 @ SQL 파일에 저장된 내용을 실행합니다.

*해당 명령어는 확장자가 .SQL인 파일에 저장되어 있는 쿼리문을 실행시키기 위해서 사용합니다.
5 SPOOL 오라클 화면을 갈무리하여 파일로 저장합니다.

*SQL문과 실행된 쿼리의 결과를 파일로 기록하는 명령문 입니다.
즉, 화면에 보여지는 내용 전체를 갈무리해서 하나의 파일로 만듭니다.
6 GET 파일의 내용을 SQL 버퍼로 읽어 들입니다.

*SAVE 명령어를 사용하여 저장한 SQL 명령어를 다시 사용할 수 있는데 이때 사용하는 명령어 가 GET 입니다.
GET 명령어도 SAVE 명령어와 마찬가지로 파일 이름만 기술하고 확장자를 기술 하지 않으면 기본적으로 확장자를 .SQL로 인식한다.
7 EXIT 오라클을 종료합니다.

 

 

 

✔시스템 변수 조작을 위한 SET 명령어

no  SET 명령어 설명
1 HEADING (HEA) *컬럼 제목의 출력 여부를 결정

*HEADING은 SELECT 명령어를 수행한 후 실행 결과가 출력 될때 컬럼의 제목을 출력할 것인지의 여부를 제어합니다.

SQL> SET HEADING OFF
SQL> SET HEADING ON

2 LINESIZE *라인 당 출력할 문자의 수를 결정

*시스템 변수 LINESIZE는 라인당 출력 될 문자의 수를 결정합니다.
*디폴트 값은 80이므로, SELECT문의 출력 결과를 출력할때에는 한 라인에 80까지만 출력 됩니다.

SQL> SET LINESIZE 100
3 PAGESIZE *페이지 당 출력할 라인의 수를 결정하는 PAGESIZE

*SQL 명령문의 실행 결과에 대해서 출력 될 수 있는 페이지의 크기를 설정하는 변수로써,

한 페이지에 컬럼 제목, 컬럼 제목과 데이터의 구분선, 페이지를 구분하기 위한 공백 라인을 포함합니다.

SQL> SET PAGESIZE 10
4 COLUMN FORMAT *컬럼에 저장된 데이터의 출력 형식 변경을 위한 변수입니다.

SQL> COLUMN ENAME FORMAT A25
SQL> COLUMN SAL FORMAT 9,999,999
SQL> COLUMN COMM FORMAT 0,000,000

 

 

이상으로 SQL*PLUS의 용어 설명을 마치겠습니다.

 

궁금한 사항이나, 수정사항은 댓글 부탁드립니다.

 

:)

 

감사합니다.

 

728x90