Chapter04. SQL*Plus 명령어 오라클에서는 SQL 명령문을 간단하게 편집하고 저장할 수 있도록 SQL*Plus 명령어라는 툴을 제공해 주는데 이번 장에서는 SQL*Plus 명령어를 학습해 보기로 하겠습니다.

Slides:



Advertisements
Similar presentations
1/29 키보드로 직접 입력할 수 없는 다양한 기호와 한자를 입력하는 방법을 알아 보자. 또한 블록으로 영역을 설정하는 여러 가지 방법에 대해 살펴본 후 블록 으로 설정된 내용을 복사하여 붙여넣거나, 잘라내고 이동하는 방법에 대해서 도 알아보자. 02_ 문서의 입력과 편집.
Advertisements

1. 2 차원 배열  배열은 동일한 데이터 유형으로 여러 개의 변수를 사용할 경우 같은 이 름으로 지정하여 간편하게 사용할 수 있도록 하는 것으로서 앞에서 1 차원 배열을 공부하였습니다.  2 차원 배열은 바둑판을 생각하면 되며, 1 차원 배열에서 사용하는 첨자를 2.
아이튠즈 계정 생성. 1. 인터넷을 통해 설치한 아이튠즈를 실행 한 후 그림의 순서대로 선택을 합니다. 1 2.
1 차시 : SW 코딩으로 배우는 3D 기초작품 및 톱니바퀴 만들기 1)SPL3D 프린팅 툴 설치하기 2) 도형 추가하기 3) 도형 연산 명령어 익히기 4)3D 프린터 출력을 위한 STL 파일 내보내기 5) 하트모양 만들기 6) 하트모양 열쇠고리 만들기 7) 변수와 수식.
베플리-T 2.8 설치 매뉴얼 1. 윈도우 XP에서 설치하기 p.2
파워포인트 2007.
DB 프로그래밍 학기.
DB 프로그래밍 학기.
2장. 프로그램의 기본 구성. 2장. 프로그램의 기본 구성 2-1"Hello, World!" 들여다 보기 /* Hello.c */ #include int main(void) { printf("Hello, World! \n"); return 0;
Database Laboratory, Hong Ik University
블록 속성 정의와 추출 속성 정의 블록을 만들 객체들에 문자를 사용하여 속성을 설명하는 꼬리표에 해당하는 태그를 정의하는
Outlook Express 메일 백업 및 복원가이드
MySQL 및 Workbench 설치 데이터 베이스.
ANSYS17.2 Student 제품 무료 다운로드
SQL*PLUS.
테이블 : 데이터베이스를 구성하는 요소로 같은 성격에 정보의 집합체. 레코드 : 하나의 정보를 가지고 있는 컬럼의 집합체
홍익대학교 메일 시스템 구축 Outlook 설정 매뉴얼.
[ ] 호서대학교 현장실습지원센터 홈페이지 안내 교수 매뉴얼.
SAP GUI 설치 가이드 프로세스 혁신 TFT.
3.2 SQL Server 설치 및 수행(계속) 시스템 데이터베이스 master
11장. 포인터 01_ 포인터의 기본 02_ 포인터와 Const.
SqlParameter 클래스 선문 비트 18기 발표자 : 박성한.
13 인덱스 인덱스의 개념 인덱스의 구조 인덱스의 효율적인 사용 방법 인덱스의 종류 및 생성 방법 인덱스 실행 경로 확인
                              데이터베이스 프로그래밍 (소프트웨어 개발 트랙)                               퍼스널 오라클 9i 인스톨.
18강. 데이터 베이스 - II JDBC 살펴보기 Statement객체 살펴보기 Lecturer Kim Myoung-Ho
3장 SQL*Plus 명령어.
17강. 데이터 베이스 - I 데이터 베이스의 개요 Oracle 설치 기본적인 SQL문 익히기
Homework #5 (1/3) 다음을 수행한 후, 결과 파일들을 출력하여 제출한다.
학습목표 학습목차 다른 홈페이지의 HTML 파일 코드를 보는 방법에 대해 알아봅니다.
13 인덱스 인덱스의 개념 인덱스의 구조 인덱스의 효율적인 사용 방법 인덱스의 종류 및 생성 방법 인덱스 실행 경로 확인
10강. JSP 본격적으로 살펴보기-II 스크립트릿, 선언, 표현식 지시자 주석 Lecturer Kim Myoung-Ho
환경 설정 예제 데이터베이스 생성 - 그림 3.34의 SQL Server 관리 스튜디오 창의 왼쪽 영역의 데이터베
어서와 C언어는 처음이지 제14장.
Linux/UNIX Programming
7가지 방법 PowerPoint에서 공동 작업하는 다른 사용자와 함께 편집 작업 중인 사용자 보기
JDBC Lecture 004 By MINIO.
이메일 자동 포워딩 방법 (Outlook/OWA)
Java의 정석 제 5 장 배 열 Java 정석 남궁성 강의 의
홀인원2.0 설치 메뉴얼.
Linux/UNIX Programming
03 SQL*Plus SQL*Plus 개요 SQL*Plus 명령어 SQL*Plus 사용 환경 명령어
인문학 동영상 강의 사용자 매뉴얼 (PC & Mobile).
27강 JAVA Collections - II - Map계열 컬렉션 클래스 살펴보기 - Set계열 컬렉션 클래스 살펴보기
3D 프린팅 프로그래밍 01 – 기본 명령어 강사: 김영준 목원대학교 겸임교수.
ADO.NET (SqlConnection, SqlCommand)
8장. spss statistics 20의 데이터 변환
PL/SQL 코드 생성 및 수행 1 여러가지 환경 DOS에서 sqlplus Windows에서의 sqlplusw
PMIS 서버 설정 환경설정 작성자 : 배경환.
화상대화 매뉴얼 한국지역정보개발원.
Linux/UNIX Programming
Linux/UNIX Programming
디버깅 관련 옵션 실습해보기 발표 : 2008년 5월 19일 2분반 정 훈 승
연구성과 등록.
Linux 9.X 기초에서 활용까지 Chapter 06 VI 편집기.
3장 SQL*Plus 명령어.
 파일 아카이브와 압축 명령 익히기.
14 뷰(View) 뷰의 개념 뷰 관리.
01. 분산 파일 시스템의 개요 네트워크에 분산된 파일을 사용자가 쉽게 접근하고 관리할 수 있게 해준다.
기초C언어 제2주 실습 프로그래밍의 개념, 프로그램 작성 과정 컴퓨터시뮬레이션학과 2016년 봄학기 담당교수 : 이형원
Chapter 10 데이터 검색1.
함수, 모듈.
9 브라우저 객체 모델.
TrustNet 전자 협조전 사용설명서 목 차 작성,수정,삭제 결재함 처리현황 발송대장,접수대장
 6장. SQL 쿼리.
Docker Study 6~7.
Linux/UNIX Programming
Chapter 11. 문서 인쇄 및 파일 형식.
SPL-Duino 블록 편집기 이용하기 전류센서 블록 만들기 SPL-Duino 블록 편집기를 실행합니다.
Ⅰ. 데이터베이스 정의 Ⅱ. MS SQL 서버 Ⅲ. 데이터베이스 인터페이스
Presentation transcript:

Chapter04. SQL*Plus 명령어 오라클에서는 SQL 명령문을 간단하게 편집하고 저장할 수 있도록 SQL*Plus 명령어라는 툴을 제공해 주는데 이번 장에서는 SQL*Plus 명령어를 학습해 보기로 하겠습니다

4 장에서 다룰 내용 SQL*Plus 명령어의 개념 1 2 2 SQL*Plus 편집 명령어 SQL*Plus 파일 명령어 3 3 시스템 변수 조작을 위한 SET 명령어 3 4

01. SQL*Plus 명령어의 개념 SQL*Plus 명령어는 오라클에서 제공하는 SQL*Plus에서만 사용되는 명령어로 SQL문을 실행시키고, 그 결과를 볼 수 있도록 오라클에서 제공하는 툴이다. SQL*Plus 명령어를 SQL 명령문과 혼동하는 사람들이 많은데, SQL은 데이터베이스에서 자료를 검색하고 수정하고 삭제, 등을 위한 데이터베이스 언어인 반면, SQL*Plus 명령어는 툴에서 출력 형식을 지정하는 등 환경을 설정한다.

01. SQL*Plus 명령어의 개념 SQL 문을 입력하면 SQL 버퍼(Buffer)라는 메모리 부분에 SQL문이 저장되며 새 SQL문을 입력할 때까지 남아 있음 (한문장씩) SQL*Plus는 버퍼에 있는 SQL문을 인식하여 이를 Oracle Server에서 실행할 수 있도록 전달해 주는 Oracle Tool이다.

01. SQL*Plus 명령어의 개념 다음은 SQL과 SQL*Plus 명령어의 차이점을 정리한 표입니다. SQL 문 국가 표준 데이터베이스 언어 오라클에서만 사용되는 명령어이다. 데이터베이스의 데이터를 조작할 수 없다 (환경 설정을 담당한다 – SET 명령어로 시스템 변수를 변경할 수 있다.) SQL 문을 실행 시킬 수 있는 오라클의 툴 SQL 버퍼에 저장된다. 버퍼에 저장되지 않는다 모든 명령의 끝은 세미콜론(;)으로 끝나야한다 모든 명령의 끝은 [Enter]Key에 의해 끝난다. (세미콜론(;)을 붙여도 상관없다) 만약 다음 라인에 계속 입력하려면 현재 라인의 끝에 하이폰(-)을 추가한다 연결문자 불필요 연결문자(-) 필요 약어를 사용할 수 없다 약어를 사용할 수 있음

01. SQL*Plus 명령어의 개념 SQL*Plus 명령어 중에서 자주 사용하는 명령어들은 다음과 같습니다. 명령어(약어) 기능 LIST(L), RUN(R), @, / 편집 명령어 SAVE, GET, EDIT, SPOOL 파일 명령어 HOST, EXIT 데이터베이스 접속 및 종료 명령어 LINE, PAGE 출력 형식 명령어

02. SQL*Plus 편집 명령어 명령어(약어) 설 명 LIST (L) 버퍼에 저장된 단 한문장의 sql문을 나타낸다 / RUN (R) 버퍼에 저장된 SQL 문을 보여주고 실행한다.

<실습하기> 명령어 버퍼의 내용을 출력해 보기

<실습하기> 명령어 버퍼의 내용을 출력해 보기 - 오라클은 가장 최근 수행한 단 한 개의 SQL 문을 버퍼에 저장해 두는데, 버퍼의 내용을 나타내기 위한 명령어로 LIST가 있다. - SQL*Plus 명령어 LIST의 약어는 L이다. L은 바로 이전의 SQL을 나타내준다. 단지, SQL 문을 표시할 뿐 실행을 시키는 것은 아니다. SQL*Plus L

<실습하기> SQL 버퍼에 저장된 쿼리문을 실행하는 / SQL*Plus /

2.3 SQL 버퍼 내용을 보여주고 실행하는 RUN(R) - RUN(R) 명령어는 /와 같이 버퍼에 저장된 명령을 수행하지만, - /와 RUN(R)의 차이점은 RUN(R)은 명령 버퍼에 저장된 내용을 다시 한 번 출력한다는 점이다 - RUN(R) 명령어는 LIST(L)(출력) 명령어와 /(실행) 명령어를 결합한 형태라고 말할 수 있다 SQL*Plus R

03. SQL*Plus 파일 명령어 오라클은 현재 실행 중인 SQL문을 명령 버퍼(command buffer)에 보관한다고 하였다. 보관 중인 명령 버퍼의 내용을 영구적으로 기록하기 위해서 파일에 저장하는 SQL*Plus 파일 명령어에 대해서 살펴보자. 명령어(약어) 설 명 EDIT (ED) 파일의 내용을 notepad, 메모장와 같은 에디터로 읽어 편집할 수 있도록 한다. HOST SQL *Plus를 종료하지 않고 OS 명령을 수행할 수 있도록 OS 환경으로 잠시 빠져 나갈 수 있도록 한다. OS Prompt 상에서 Exit 하면 다시 오라클 환경으로 돌아온다. EXIT SQL *Plus을 종료한다. SAVE SQL 버퍼 내의 현재 내용을 실제 파일로 저장한다. @ SQL 파일에 저장된 내용을 실행한다. SPOOL SQL 문자의 결과를 파일로 저장한다. GET 파일의 내용을 SQL 버퍼로 읽어 들인다.

3.1 버퍼에 저장된 명령어를 내용을 메모장에서 편집하게 하는 EDIT (ED) SQL은 파일의 내용을 메모장에서 쉽게 편집할 수 있도록 ED[IT] 명령어를 제공한다. EDIT(ED)를 입력하면 메모장이 실행되면서 마지막에 입력했던 SQL 명령문이 나타난다 EDIT(ED) 명령어를 사용할 때 파일이름을 생략하면 버퍼에 저장된 명령어를 메모장에서 쉽게 편집할 수 있도록 한다 형식 EDIT filename SQL*Plus EDIT(ED)

3.1 버퍼에 저장된 명령어를 내용을 메모장에서 편집하게 하는 EDIT (ED) SQL 버퍼 편집할 때에도 ;를 /로 대체 되어야만 한다 SQL 버퍼를 편집기로 열었을 때 명령어문 끝에 붙였던 종결문자 ; 가 편집화면에서는 /로 대체된다 SQL 명령문이 저장된 버퍼는 파일 형태인데 그 파일 이름은 “afiedt.buf”이다. 이 파일에는 직전에 수행한 SQL 문이 저장되는데 이를 명령 버퍼(command buffer)라고 한다. 이 명령 버퍼에는 최근에 실행한, 즉 마지막으로 실행한 단 한 문장만 저장되고 이전 것은 저장되지 않는다. EDIT 명령어는 직전에 수행했던 쿼리문의 일부만을 수정하고 싶을 때에 유용하게 사용된다

<실습하기> 버퍼에 있는 내용을 메모장에서 편집하기 쿼리문을 변경하기 위해서 ED[IT] 명령어를 사용해봅시다. 다음과 같이 입력합니다. SQL 프롬프트에서 ED를 입력하여 버퍼에 저장된 가장 최근의 SQL 문을 메모장으로 불러옵니다. SQL*Plus ED 마지막 라인에 ; 대신에 / 기호를 사용되는 것을 확인할 수 있다.

<실습하기> 버퍼에 있는 내용을 메모장에서 편집하기 3. 그런 후 다음과 같이 SQL 문을 변경합시다. 변경 후에 닫기 버튼[x]을 누릅니다. 4. 변경된 내용을 저장하겠냐고 물어보는 대화상자가 나타납니다. 그러면 [저장] 버튼을 클릭합니다. 5. 메모장에 수정한 내용이 저장되었음을 확인한 후에 이를 실행하기 위해서는 SQL 프롬프트에서 “R”또는 “/”를 입력하면 SQL문이 실행됩니다. SQL select username from member where age='27’ /

3.2 DOS 프롬프트로 나가게 하는 HOST 명령 버퍼의 SQL문이 저장되는 것은 파일 형태인데 그 파일 이름은 "afiedt.buf"이다. 오라클을 종료하지 않고 DOS 명령어인 dir를 사용하여 afiedt.buf 파일이 존재하는 것을 확인하려면? 이럴 때 사용할 수 있는 명령어가 DOS창으로 나가는 HOST 이다 SQL*Plus 로 돌아가기 위해서는 EXIT를 입력합니다. SQL*Plus HOST SQL*Plus EXIT HOST SQL*Plus DOS EXIT

<실습하기> 마지막에 실행한 명령어를 확장자가 sql 인 파일에 저장하기 3. DOS 프롬프트로 나가서 파일 목록을 살펴보면 afiedt.buf이 생성되어 있는 것을 확인 할 수 있습니다. SQL*Plus HOST

<실습하기> 마지막에 실행한 명령어를 확장자가 sql 인 파일에 저장하기 4. SQL*Plus 로 돌아가기 위해서는 EXIT를 입력합니다. SQL*Plus EXIT

SQL*Plus 에서는 사용자가 가장 최근에 수행한 쿼리문을 파일로 저장할 수 있도록 하는 SAVE 명령어를 제공합니다. SAVE 명령어는 옵션으로 REPLACE 혹은 APPEND를 사용할 수 있습니다. 이미 존재하는 파일에 새로운 내용을 덮어쓰길 원하면 REPLACE 옵션을 사용합니다. APPEND 옵션은 이미 존재하는 파일 끝에 마지막으로 실행한 명령어가 추가됩니다. 형식 SAVE filename [REPLACE | APPEND]

<실습하기> 마지막에 실행한 명령어를 확장자가 sql 인 파일에 저장하기 (SAVE) 마지막에 실행한 명령어를 A001.sql 로 저장하기 위해서 다음과 같이 입력합니다. SQL*Plus SAVE A001 확장자는 기본적으로 .SQL로 붙는다.

<실습하기> 마지막에 실행한 명령어를 확장자가 sql 인 파일에 저장하기 (SAVE) 5. EDIT(ED) 명령어는 두 가지 용도로 사용되는데 5-1. 파일 명을 생략한 채 사용하면 메모장이 실행되면서 명령 버퍼인 afiedt.buf 파일을 열지만 5-2. 확장자를 생략한 채 파일 명 A001만 입력하면 디폴트로 확장자가 .sql인 파일을 찾습니다. A001.sql 파일의 내용을 확인하기 위해서 다음과 같이 입력합니다. SQL*Plus ED A001

<실습하기> 이미 존재하는 파일의 내용 대체하기 (REPLACE) SAVE 명령어 다음에 기술한 파일이 이미 존재 한다면 에러가 납니다. 만일 존재하는 파일의 내용을 지금 막 수행한 쿼리문으로 대체시키려면 REPLACE 라는 옵션을 사용합니다. 1. 사원의 모든 정보를 출력하는 쿼리문을 입력합니다.

<실습하기> 이미 존재하는 파일의 내용 대체하기 (REPLACE) 2. TEMP.sql 라는 파일에 저장합니다. SQL*Plus SAVE TEMP

<실습하기> 이미 존재하는 파일의 내용 대체하기 (REPLACE) 3. 다음과 같이 입력하여 파일의 내용이 변경되었음을 확인합니다. SQL*Plus ED TEMP

<실습하기> 이미 존재하는 파일의 내용 대체하기 (REPLACE) 4. 모든 정보를 출력하는 명령문을 수행합니다. SQL*Plus SELECT username FROM member;

<실습하기> 이미 존재하는 파일의 내용 대체하기 (REPLACE) 5. 지금 막 수행한 쿼리문을 TEMP 파일로 저장해 봅시다. SQL*Plus SAVE TEMP 파일이 이미 존재 하므로 에러가 발생합니다.

<실습하기> 이미 존재하는 파일의 내용 대체하기 (REPLACE) 6. 이미 존재하는 파일에 새로운 내용을 덮어쓰길 원하면 REPLACE을 사용합니다. 그러면 TEMP.sql 파일에 새로운 내용이 덮어 써집니다. SQL*Plus SAVE TEMP REPLACE TEMP.sql 파일에 새로운 내용이 덮어 써집니다.

<실습하기> 이미 존재하는 파일의 내용 대체하기 (REPLACE) 7. 다음과 같이 입력하여 파일의 내용이 변경되었음을 확인합니다. SQL*Plus ED TEMP

<실습하기> 이미 존재하는 파일에 내용 추가하기 (APPEND) 확장자가 sql 인 파일에는 한 개 이상의 SQL문을 저장합니다. 이미 쿼리문이 저장되어 있는 sql 파일에 SAVE 명령어 APPEND 옵션을 사용하여 가장 최근에 수행하여 버퍼에 저장되어 있는 쿼리문을 파일의 내용을 추가해보겠습니다 1. 모든 정보를 출력하는 명령문을 수행합니다. SQL SELECT * FROM member;

<실습하기> 이미 존재하는 파일에 내용 추가하기 (APPEND) 2. TEMP.sql 파일에는 모든 이름을 출력하는 명령문인 “SELECT username FROM member;”가 저장되어 있습니다. 이 내용을 저장하고 있는 TEMP.sql 파일에 모든 정보을 출력하는 명령문인 “SELECT * FROM member;”을 추가합시다. 그러기 위해서는 APPEND 옵션을 사용해야 합니다. SQL*Plus SAVE TEMP APPEND 현재 버퍼

<실습하기> 이미 존재하는 파일의 내용 대체하기 (APPEND) 3. 다음과 같이 입력하여 파일의 내용이 변경되었음을 확인합니다. SQL*Plus EDIT(ED) TEMP 모든 username을 출력하는 명령문과 모든 정보를 출력하는 명령문이 순서대로 저장되어 있음을 확인할 수 있음

3.4 SQL 파일에 저장된 명령어를 실행하는 @ @ 명령어는 확장자가 .SQL인 파일에 저장되어 있는 쿼리문을 실행시키기 위해서 사용합니다. @ 다음에는 실행시키고자 하는 파일을 지정합니다. 확장자를 생략한 채 파일명만 기술하면 확장자는 디폴트로 .SQL로 인식합니다. SQL 파일에는 일반적으로 여러 개의 쿼리문을 저장해 두기에 기술된 쿼리문을 순차적으로 수행합니다. TEMP.sql 파일에 저장된 쿼리문을 실행시킵시다. 형식 @ filename 형식 @TEMP

3.5 갈무리 기능을 하는 SPOOL SAVE 명령어가 SQL문 자체를 저장하는데 비해 SPOOL명령어는 SQL문과 실행된 쿼리 결과를 파일로 기록하는 명령어 입니다. 즉 화면에 보여지는 내용 전체를 갈무리 해서 하나의 파일로 만듭니다. SPOOL 명령은 SQL 명령문의 실행 결과 화면이 갈무리되어 지정한 파일에 기록되며, 확장자는 기본으로 filename.LST가 부여됩니다. 형식 SPOOL filename

3.5 갈무리 기능을 하는 SPOOL SPOOL를 해제하기 위한 명령어로 SPOOL OFF가 제공됩니다. SPOOL OFF 명령어는 SPOOL를 화면 갈무리 작업을 중단하며 해제하기 전까지의 여러 SQL 명령문이 모두 저장합니다. SPOOL 명령어를 사용할 때 주의할 점은 화면 갈무리한 내용을 저장하기 위해서는 반드시 SPOOL OFF를 해주어야한다는 점입니다. 혹시 SPOOL OFF를 하지 않고 오라클을 종료하게 되면 지금까지 갈무리한 내용이 저장되지 않고 날아가 버립니다. 형식 SPOOL OFF

<실습하기> 화면 갈무리하기 SQL*Plus 화면을 갈무리하여 B001.LST 파일에 저장해 봅시다. 1. SQL 프롬프트에 SPOOL을 입력하면 갈무리 기능을 시작합니다. 명령어 SPOOL B001 SELECT * FROM DEPT; SELECT * FROM EMP;

<실습하기> 화면 갈무리하기 2. 저장하기 위해선 반드시 SPOOL OFF를 해주어야 합니다 SPOOL OFF 명령어는 SPOOL를 해제함으로서 화면 갈무리를 중단합니다. 해제하기 전까지 여러 SQL 명령문이 모두 갈무리됩니다. SQL 명령문과 함께 실행결과 화면까지 갈무리하여 B001.LST로 저장됩니다. DOS 프롬프트로 나갑니다. 파일 목록을 보면 B001.LST가 생성되어 있는 것을 확인 할 수 있습니다. SQL*Plus SPOOL OFF HOST DIR

<실습하기> 화면 갈무리하기 3. 다시 SQL로 되돌 온 후에 해당 파일을 에디터(메모장)에서 열어봅시다. ED 명령어는 디폴트 확장자를 .sql 로 인식하기 때문에 B001.LST 파일일 경우에는 확장자까지 명확하게 적어 주어야 합니다. SQL*Plus EXIT ED B001.LST

3.6 저장한 SQL 명령어를 가져오는 GET SAVE 명령어를 사용하여 저장한 SQL 명령어를 다시 사용할 수 있는데 이때 사용하는 명령어가 GET입니다. GET 명령어도 SAVE 명령어와 마찬가지로 파일 이름만 기술하고 확장자를 기술하지 않으면 기본적으로 확장자를 .SQL로 인식합니다. /를 입력하면 버퍼(afiedt.buf)에 저장된 쿼리문을 실행한다고 하였습니다. 바로 전에 실행했던 쿼리문이 아니라 훨씬 이전에 실행했던 명령어를 /를 입력해서 실행하려면 어떻게 해야 할까요? 만일 훨씬 이전에 실행했던 명령어가 SQL 파일(SAVE 명령어로 저장해 두었겠지요^^)로 저장되어 있다면 GET 명령어로 SQL 파일에 저장된 쿼리문을 버퍼에 불러온 후에 /을 입력하여 이전에 실행했던 쿼리문을 재실행시킬 수 있습니다. 형식 GET filename

<실습하기> GET을 사용하여 쿼리문을 가져오기 SAVE 명령어를 사용하여 파일에 저장한 SQL 명령문을 SQL 버퍼로 가져 오도록 합시다. GET 다음에 파일이름을 기술하면 해당 쿼리문이 SQL 버퍼로 불려옵니다. SQL*Plus GET A001

<실습하기> GET을 사용하여 쿼리문을 가져오기 2. 이렇게 SQL버퍼에 올려진 SQL문은 앞서 학습한 /나 R 로 실행합니다. SQL*Plus / 버퍼에 저장된 바로 전에 실행했던 쿼리문이 수행됨

04. 시스템 변수 조작을 위한 SET 명령어 오라클은 다양한 시스템 변수를 제공하며 이러한 변수들은 디폴트 값이 지정되어 있습니다. 현재 시스템 변수의 값을 확인하기 위해서는 SHOW 명령어를 사용하고 변경하기 위해서는 SET 명령어를 사용합니다. 환경 변수 설 명 HEADING on | off SELECT 명령어를 수행한 후 실행결과가 출력될 때 컬럼의 제목을 출력할 것인지의 여부를 제어한다. 디폴트 값은 ON이므로 컬럼 제목이 출력된다. 컬럼 제목이 출력되지 않도록 하려면 다음과 같이 설정한다. SET HEADING OFF

04. 시스템 변수 조작을 위한 SET 명령어 환경 변수 설 명 LINESIZE n SELECT 명령어를 수행한 후 결과를 출력할 때 한 라인에 출력할 최대 문자(Character) 수를 결정한다. 디폴트 값은 80 이다. 출력할 문자 수가 80 이상이면 다음과 같이 설정한다. SET LINESIZE 100 PAGESIZE n SELECT 명령어를 수행한 후 결과를 출력할 때 한 페이지에 출력할 최대 라인 수를 결정한다. 디폴트 값은 14 이다. 페이지당 출력할 라인수를 10으로 조절하려면 다음과 같이 설정한다. SSET PAGESIZE 10 COLUMN FORMAT 칼럼 데이터에 대한 출력 형식을 다양하게 지정하기 위한 명령어이다.

4.1 컬럼 제목의 출력 여부를 결정하는 HEADING(HEA) 변수 HEADING은 SELECT 명령어를 수행한 후 실행결과가 출력될 때 컬럼의 제목을 출력할 것인지의 여부를 제어합니다. 일반적으로 SELECT 명령어를 수행한 실행 결과에는 컬럼 제목이 출력됩니다. 다음과 같이 시스템 변수 HEADING에 OFF를 지정하면 컬럼 제목이 출력되지 않습니다. 다시 컬럼 제목이 출력되도록 하려면 시스템 변수 HEADING에 ON을 지정해야 합니다. 예 SET HEADING OFF 예 SET HEADING ON

<실습하기> 컬럼 제목의 출력 여부를 결정하기 1. HEADING에 OFF를 지정한 후에 부서의 모든 정보를 출력하는 쿼리문을 수행해 봅시다. 컬럼 제목이 출력되지 않음을 확인할 수 있습니다. SQL SET HEADING OFF SELECT * FROM DEPT; 칼럼 제목이 출력되지 않는다.

<실습하기> 컬럼 제목의 출력 여부를 결정하기 2. 시스템 변수 HEADING에 ON을 지정하여 원상 복귀한 후에 부서의 모든 정보를 출력하는 쿼리문을 수행해 봅시다. SQL SET HEADING ON SELECT * FROM DEPT; 칼럼 제목을 출력한다.

4.2 라인 당 출력할 문자 수를 결정하는 LINESIZE 변수 디폴트 값은 80 이므로 SELECT 문의 출력 결과를 출력할 때 한 라인에 80까지만 출력합니다. 만일 한 라인에 출력할 문자 수가 80자 이상일 경우에는 다음 줄에 출력됩니다.

<실습하기> 라인 당 출력될 문자 수 변경하기 사원 테이블의 전체 내용을 출력하다 보면 사원 한 사람에 대한 정보가 2 라인에 걸쳐 출력됨을 확인할 수 있습니다. 한 개의 로우의 내용이 80자 이상이기 때문입니다. 한 명의 사원 정보가 한 줄에 출력되도록 하기 위해서 한 라인에 출력될 문자 수를 100으로 조정합시다. 1. 사원 테이블의 전체 내용을 출력하는 쿼리문을 수행합니다. SQL SELECT * FROM EMP; 출력 결과가 깔끔하지 않음

<실습하기> 라인 당 출력될 문자 수 변경하기 2. 한 명의 사원 정보가 한 줄에 출력되도록 하기 위해서 한 라인에 출력될 문자 수를 100으로 조정합시다. SQL*Plus SET LINESIZE 100

4.3 페이지 당 출력할 라인 수를 결정하는 PAGESIZE 변수 PAGESIZE 변수는 SQL 명령문의 실행 결과에 대해서 출력될 수 있는 페이지의 크기를 설정하는 변수로서 한 페이지에 컬럼 제목, 컬럼 제목과 데이터 구분선, 페이지를 구분하기 위한 공백 라인을 포함합니다. 사원의 모든 정보를 출력해 봅시다. SQL SELECT * FROM EMP; 디폴트 값은 14이기에 컬럼 제목, 컬럼 제목과 데이터 구분선, 페이지를 구분하기 위한 공백 라인을 위한 3 라인을 제외하면 한 페이지에 출력되는 사원은 11명이 됩니다.

4.3 페이지 당 출력할 라인 수를 결정하는 PAGESIZE 변수 SQL*Plus SET PAGESIZE 10 페이지 크기를 10으로 지정하면 컬럼 제목, 컬럼 제목과 데이터 구분선, 페이지를 구분하기 위한 공백 라인을 위한 3 라인이 할당되므로 실제 한 페이지에 출력되는 사원은 7명이 됩니다.

4.4 컬럼에 저장된 데이터의 출력형식 변경을 위한 COLUMN FORMAT 문자형식의 컬럼의 출력 길이 조정 문자형식의 컬럼의 출력 길이를 지정하기 위해서는 다음과 같이 A다음에 컬럼의 길이를 지정합니다. 예 COLUMN (원하는컬럼명) FORMAT A25

4.4 컬럼에 저장된 데이터의 출력형식 변경을 위한 COLUMN FORMAT 숫자형식의 컬럼의 출력 길이 조정 숫자형식인 경우는 출력되는 길이에 맞게 컬럼의 길이가 자동 조정 되므로 이런 명령어를 쓸 경우가 없지만 굳이 사용해야 한다면 A길이 형식 대신 9999999나 0000000을 사용해야 합니다. 9999999는 숫자 7 자리를 의미합니다. 만일 출력할 숫자가 7자리가 안될 경우에는 공란으로 출력됩니다. 반면 0000000은 9999999와 마찬가지로 숫자 7 자리를 의미하지만, 출력할 자리수보다 작은 데이터를 출력할 경우에는 0으로 채웁니다. 데이터 출력형식 출력결과 123456 9999999 0000000 0123456

4.4 컬럼에 저장된 데이터의 출력형식 변경을 위한 COLUMN FORMAT 숫자형식의 컬럼의 출력 길이 조정 세자리마다 ,로 구분하여 출력하고자 할 경우에는 9,999,999 혹은 0,000,000로 표현합니다. 데이터 출력형식 출력결과 123456 9,999,999 123,456 0,000,000 0,123,456

4.4 컬럼에 저장된 데이터의 출력형식 변경을 위한 COLUMN FORMAT 급여 컬럼은 숫자 7자리로 설정하되 남는 자리는 공란으로 채우도록 하고, 커미션 컬럼을 7자리로 주되 남는 자리는 0으로 채우도록 합시다. 예 COLUMN SAL FORMAT 9,999,999 COLUMN COMM FORMAT 0,000,000