1. 윈도우 메뉴에서 SQL Plus 실행
2. 사용자명과 비밀번호 입력
# 수행 가능한 명령어 종류
- SQL commands
- PL/SQL blocks
- SQL*Plus commands
# 명령어 입력 종료
- with a semicolon (;)
* 현재까지 입력한 명령어를 버퍼에 저장한 후 명령어 수행
- with a blank line
* 현재까지 입력된 명령어를 버퍼에 저장하고 명령어 수행하지 않음
# 버퍼에 저장된 명령어의 수행
- SQL> run <- 버퍼에 있는 내용 listing 후 수행
- SQL> / <- 단순히 버퍼에 있는 내용 수행
- SQL> edit <- 버퍼에 있는 내용 수정
# SQL*PLUS 의 prompt 상태에서 작성한 SQL 명령어의 저장
- SQL> save “파일 경로"/ file_name[.sql]
# SQL 문을 저장한 파일 부르기
- SQL> get “파일 경로“/ file_name[.sql]
# 명령어 파일 수행
- SQL> start “파일 경로"/ file_name[.sql]
- SQL> @” 파일 경로 “ file_name[.sql]
#실행결과 spooling
- SQL> spool file_name[.ext]
- SQL> spool off
##Spool 명령어 사용 방법
SQL> spool c:~~/wantname.txt
이거 해준 뒤에 원하는 명령어들 쓰면 그 과정들이 spool 로 저장됨.
SQL> spool off
#Create TABLE
CREATE TABLE EMPLOYEE
(Fname VARCHAR(15) NOT NULL,
Minit CHAR,
Lname VARCHAR(15) NOT NULL,
Ssn CHAR(9) NOT NULL,
Bdate DATE,
Address VARCHAR(30),
Sex CHAR,
Salary DECIMAL(10,2),
Super_ssn CHAR(9),
Dno INT NOT NULL,
PRIMARY KEY (Ssn),
FOREIGN KEY (Super_ssn) REFERENCES EMPLOYEE(Ssn));
table list 확인(생성확인) : select * from tab;
desc employee(table name); -> 스키마 구조 확인
/* INSERT DATA */
INSERT INTO EMPLOYEE VALUES('James','E','Borg','888665555',to_date('1937-11-10','yyyy-mm-dd'),'450 Stone, Houston, TX','M','55000',NULL,'1');
data 넣은것 확인 -> select * from employee;
INSERT INTO EMPLOYEE VALUES('Franklin','T','Wong','333445555',to_date('1955-12-08','yyyy-mm-dd'),'683 Voss, Houston, TX','M','40000','888665555','5');
#폰트크기 set linesize 150
set pagesize 150 -> 많은 데이터 끊겨서 보이는거
commit; -> 저장(다 완료하고 해야됨)
# 환경 변수의 설정과 확인
- set / show 명령어 사용
SQL> set pause on;
SQL> show pause;
pause ON
# 유용한 환경 변수
pause msg : 한 화면씩 출력한 후 메시지 출력
pause on/off : 페이지 단위로 출력 , 초기값은 on
pagesize n : 페이지당 라인의 수를 n 으로 설정 . 초기값은 14
linesize n : 라인당 문자 수를 n 으로 설정 . 초기값은 80
heading on/off : heading 의 디스플레이 여부를 결정 . 초기값 on
time on/off : 프롬프트 앞에 현재 시각을 나타냄 . 초기값은 off
# 편집 명령어
append text : text 를 명령어 끝에 첨가
change /old/new : old 를 new 로 치환
change /text : 현 명령어 줄에서 text 를 삭제
del : 현 명령어 줄을 지움
input : 하나 이상의 줄을 첨가
input text : text 를 포함하는 명령어 줄을 첨가
list : 버퍼의 모든 내용 출력
list * : 현 명령어 줄을 보여줌
list last : 마지막 명령어 줄을 보여줌
list m n : m 부터 n 까지의 명령어 줄을 보여줌
#편집 명령 예시
1. 명령어 입력
SQL> select empno
From emp
Where deptno = 10
2. 버퍼의 내용 출력하기
SQL> I
-> 결과
1. select empno
2. From emp
3* Where deptno = 10
3. 세 번째 라인을 편집하기
SQL> I 3
3* where deptno = 10
SQL> change/10/30(10을 30으로 변경)
4. 버퍼의 내용을 출력하기
SQL> I
-> 결과
1. select empno
2. From emp
3* Where deptno = 30
# comment 달기
- remark <- 한 줄의 첫머리서부터
- /*...*/ <- 여러 줄
- -- <- 명령어의 마지막 행에
# catalog 관련 명령어
- table 의 schema 구조 조회
* SQL> desc "table_name";
# 현재 connect 한 사용자가 생성한 table 조회
- SQL> select * from tab;
#Oracle에서 사용 가능한 자료형
CHAR(size) = 고정 길이 문자열 (size 의 기본값 1, 최대값 255)
CHARACTER(size) = CHAR 와 동일
DATE = 날짜 타입
LONG = 가변 길이 문자열 (최대 2GB까지 가능)
LONG RAW = 이진 자료(binary data)(최대 2GB 또는 2^31 - 1)
NUMBER(p, s) = precision p 와 scale s 를 갖는 숫자 (최대 38자리)
RAW(size) = size 만큼의 크기를 갖는 이진 자료(최대 2GB)
VARCHAR2(size) = 최대 size 길이만큼의 가변길이 문자열
# Oracle SQL 네이밍 규칙
- 1byte 에서 30 bytes 길이로 작성
단, 데이터베이스의 이름은 8 byte 이상
- quotation marks 를 포함하면 안됨
- A-Z 범위의 글자로 시작
- A-Z, 0-9, $, #, _ 로만 구성할 수 있음
- SQL 예약어와 중복될 수 없음
##double quotation marks 로 둘러싼 이름
- naming 시 위 규칙을 따르지 않아도 됨
### 테이블 생성 예시
CREATE TABLE DEPT (DEPTNO NUMBER(2) CONSTRAINT PK_DEPT PRIMARY KEY, DNAME VARCHAR2(14), LOC VARCHAR2(13));
### 테이블 검색
SELECT * FROM DEPT;
댓글 영역