본문 바로가기
SQL

[Oracle] 오라클 사용법_기초

by YOU R PLANET 2022. 1. 3.

1. 오라클 실행 파일과 도구 파일을 다운받아 설치한다. 


2. cmd 를 통해 DB 아이디와 비밀번호를 설정한다. 

*오라클은 mySQL과 다르게 CREATE database 기능이 없다. 

(= 아이디, 비밀번호가 곧 디비 아이디, 비밀번호)

sqlplus
system(기본 아이디) 1234(기본 비밀번호)
create user scott(user-name) identified by tiger(user-id);
grant resource, connect to scott(user-id);
exit 
sqlplus
scott(user-name)
tiger(user-id)

3. 도구 파일을 켜서 접속한다. 

* System 1234 로 접속해도 되고, 혹은 db 아이디 비밀번호로 접속해도 된다. 

기본 아이디로 입력해도 되고,
유저 아이디로 접속해도 된다.

나는 원래 만들어 둔 db가 있어서 해당 db를 입력 후 비밀번호를 입력하여 접속했다. 


4. 데이터 베이스 파일을 긁어와 실행시켜보거나 직접 입력해서 테스트 해본다.

 

SQL 파일을 만들고, 만들어 둔 파일을 긁어 저장하거나,

새로 만들어 실행해본다. 

 

문법은 MySQL과 거의 동일하다.

 

+) 기본 문법 예제

 

-- [실습 2-9] 직책이 MANAGER 이거나 SALESMAN 이거나 CLERK인 사원정보 출력하기
-- [방법 2-9-1]
SELECT * FROM EMP WHERE JOB = 'MANAGER' OR JOB = 'SALESMAN' OR JOB = 'CLERK';
SELECT * FROM EMP WHERE JOB IN ('MANAGER', 'SALESMAN', 'CLERK');

 

-- [개념 2-5] (문자)대소 비교 연산자(비교 문자열이 문자 하나일 때)
-- [실습 2-4] 사원 이름의 첫 문자가 F와 같거나 F보다 뒤에 있는 회원정보 출력하기
SELECT * FROM EMP WHERE ENAME >= 'F';

 

-- [개념 2-6] (문자)대소 비교 연산자(비교 문자열이 문자 여러 개일 때)
-- [실습 2-6] 사원 이름에 FORZ를 포함한 문자열보다 알파벳 순서로 앞에 있는 회원정보 출력하기
SELECT * FROM EMP WHERE ENAME <= 'FORZ';

 

-- [실습 2-12] 사원의 급여가 2000 미만이고 3000 초과하는 사원정보 출력하기
-- [방법 2-12-1]
select * from EMP where sal < 2000 or sal > 3000;
SELECT * FROM EMP WHERE SAL NOT BETWEEN 2000 AND 3000;

 

-- [실습 3-1] 사원의 이름이 대문자 S로 시작하는 데이터 조회
select * from EMP WHERE ENAME LIKE 'S%';

-- [실습 3-2] 사원 이름의 두 번째 글자가 L인 사원만 출력
SELECT * FROM EMP WHERE ENAME LIKE '_L%';

 

-- [실습 3-3] 사원 이름에 AM이 포함되어 있는 사원만 출력
SELECT * FROM EMP WHERE ENAME LIKE '%AM%';


-- [실습 3-4] 사원 이름에 AM이 포함되어 있지 않은 사원만 출력
SELECT * FROM EMP WHERE ENAME NOT LIKE '%AM%';

 

/*
    [개념 4] IS NULL 연산자
    (1) 정의
        특정 열 또는 연산의 결과 값이 NULL인지 여부를 확인하기 위한 연산자
    (2) NULL은 산술 또는 비교 연산자와 비교해도 결과 값이 NULL이다.
        NULL + 100 = NULL
        NULL > 100 = NULL
*/

-- [실습 4-1] 추가수당이 NULL인 사원 출력하기
-- 잘못된 예)
SELECT * FROM EMP WHERE COMM = NULL;
-- 올바른 예)
SELECT * FROM EMP WHERE COMM IS NULL;
-- [실습 4-2] 직속 상관이 있는 사원 데이터만 출력하기
-- 직속 상관이 있는 사원은 상급자 사원번호(MGR)가 담겨 있다.
SELECT * FROM EMP WHERE MGR IS NOT NULL;

'SQL' 카테고리의 다른 글

[ORACLE] 기본 문법 2  (0) 2022.01.03
[ORACLE] 기본 문법 1  (0) 2022.01.03
[SQL] JAVA 와 연동하는 방법  (0) 2021.11.30
[SQL] SQL 프로그래머스 연습  (0) 2021.11.30
[SQL] SQL 기본이론(3): GROUP BY, JOIN, SUBGQUERY, TRANSACTION  (0) 2021.11.30

댓글