SQL - ① 오라클과 데이터베이스 (DMCCONET)

hoegon kim·2022년 10월 24일
0

SQL-PLUS

목록 보기
2/17
post-thumbnail

오라클과 데이터베이스

학습내용

  • 1.데이터베이스 관리 시스템이란?
  • 2.오라클 설치
  • 3.SQL와 데이터 조회하기
  • 4.구조파악, 별칭, 중복처리 명령어
  • 5.DUAL 테이블

학습목표

  • 오라클의 개념을 이해하고 설명할 수 있습니다.
  • 오라클을 설치할 수 있습니다.
  • 데이터베이스의 개념에 대해 이해하고 설명할 수 있습니다.
  • 기본적인 SELECT 문을 구사할 수 있습니다.

1.데이터베이스 관리 시스템(DBMS)란?

1-1) 데이터베이스(DB : DataBase)

  • 조직화된 정보의 집합

1-2) 데이터베이스 관리 시스템(DBMS : Data base management system)

  • 연관성 있는 데이터들의 집합을 효율적으로 응용하기 위해 구성된 소프트웨어들의 집합체

1-3) 관계형 데이터 베이스

  • 관계형 데이터 베이스 종류

    	오라클(Oracle), 사이베이스(Sybase), 인포믹스(Infomix), MYSQL, Acess, SQL Server
  • 관계형 데이터베이스 정보를 테이블 형태로 저장합니다.

  • 테이블은 2차원 형태의 표처럼 볼 수 있도록 로우(ROW:행)와 칼럼(COLUMN:열)으로 구성합니다.

  • DEPARTMENT 테이블은 4개의 로우와 3개의 칼럼(부서번호:DNO, 부서이름:DNAME, 지역:LOC 으로 구성된 테이블입니다.

정리

테이블이라는건 컬럼과 로우로 이루어진 자료이며

데이터베이스라는건 여러개의 테이블이 모여서 하나의 데이터 베이스를 만들고 그러한 데이터베이스들이 모여서 DBMS 를 만든다.


2.오라클 설치

오라클 다운받기

웹 사이트에 접속하여 오라클을 다운받을 수 있습니다. 해당 OS에 맞는 것을 선택합니다.

링크 : http://www.oracle.com/technetwork/kr/index.html

오라클 접속하기

  • 데이터베이스 사용자는 오라클 계정(Account)이라는 용어와 같은 의미로 사용됩니다. 오라클을 설치하면 한개 이상의 데이터베이스 권한을 갖는 디폴트(기본적인) 사용자가 존재합니다. 오라클에서 제공되는 사용자 계정은 다음과 같습니다.

  • Command 환경에서 sql*plue 로그인(cmd)

데이터베이스 접속을 시도하면 오라클 데이터베이스를 사용할 수 있는 사용자인지를 검증하기 위해서 사용자 계정과 암호를 묻게 됩니다.

오라클을 설치하게 되면 기본적으로 생성되는 사용자 계정 중에서 hr을 사용합니다. hr의 패스워드는 1234입니다.

SQL 접속방법

  1. SQL 접속
    SQL> conn system/ora11
    Connected.

SQL> alter user hr account unlock;
User altered.

SQL> alter user hr identified by hr;
User altered.

SQL> conn hr/hr
Connected.

  1. sql 관리자 권한 순서
    SYS > SYSTEM > SCOTT > HR

3.SQL와 데이터 조회하기

SQL(Structured Query Language)

  • 데이터베이스에 저장된 데이터를 조회, 입력, 수정 삭제하는 등의 조작이나, 테이블을 비롯한 다양한 객체(시퀀스. 인덱스 등)를 생성 및 제어하는 역할을 합니다.

SQL의 종류

  • 데이터 정의어(DDL)
    데이터베이스 관리자나 응용 프로그래머가 데이터베이스의 논리적 구조를 정의하기 위한 언어로서 데이터 사전(Data Dictionary)에 저장 됩니다.

  • 데이터 조작어(DML)
    데이터베이스에 저장된 데이터를 조작하기 위해 사용하는 언어로서 데이터 검색(Retrieval), 추가(Insert), 삭제(Delete), 갱신(Update) 작업 수행 합니다.

  • 데이터 제어어(DCL)
    데이터에 대한 접근 권한 부여 등의 데이터베이스 시스템의 트랜잭션을 관리하기 위한 목적으로 사용되는 언어입니다.

SQL와 데이터 조회하기

가장 중요한 개념

SQL의 문장은 5가지로 이루어져있다. 내가해당하는 작업을할때 테이블을 변경을 할것인지 또는 컬럼을 작업할것인지에 따라 DQL,DML / DDL 를 구분할줄 알아야한다.


4.구조파악, 별칭, 중복처리 명령어


테이블 구조를 살펴보기 위한 DESC

테이블에서 데이터를 조회하기 위해서는 테이블의 구조를 알아야 합니다. 테이블의 구조를 확인하기 위한 명령어로는 DESCRIBE가 있습니다.

DESC 명령어는 테이블의 칼럼명, 데이터 형, 길이와 NULL 허용 유무 등과 같은 특정 테이블의 정보를 알려줍니다.


데이터를 조회하기 위한 SELECT 문

SELECT 문은 데이터를 조회하기 위한 SQL 명령어입니다.

다음은 테이블의 내용을 살펴보기 위한 쿼리문 입니다.

  • SELECT는 데이터베이스 내에 저장되어있는 테이블을 조회하기 위한 명령어입니다.

  • SELECT 다음에는 보고자 하는 대상의 칼럼명을 기술합니다. SELECT 다음에 *을 기술하면 지정된 테이블의 모든 칼럼을 조회합니다.

  • FROM 다음에는 보고자 하는 대상의 테이블 이름을 기술합니다.


특정데이터만 보기

사원번호에 해당되는 칼럼명은 empno이고 사원명에 해당되는 칼럼명은 ename입니다. empno와 ename을 출력하기 위해서는 출력하고자 하는 순서대로 기술하되 칼럼과 칼럼 사이에 콤마를 기술합니다.


산술 연산자

급여로 연봉 계산을 해보도록 합시다. 일반적으로 연봉은 급여를 12번 곱한 것이므로 연봉을 구하기 위해서 산술 연산자를 사용합시다.


nvl 함수 사용하기

널은 ? 혹은 ∞의 의미이기 때문에 연산, 할당, 비교가 불가능합니다.

다음은 산술 연산에 NULL을 사용하는 경우에는 특별한 주의가 필요합니다.
이를 설명하기 위해서 연봉 계산에 커미션을 더하는 예를 살펴봅시다.

1. 예제

SQL>

select ename, salary, job, dno, commission,
salary12, salary12+commission
from employee;

2. 예제 (nvl 함수 사용하기)

SQL>
select ename, salary, job, dno, nvl(commission, 0),
salary12, salary12+nvl(commission, 0)
from employee;


컬럼에 별칭 지정하기

heading로 별칭 부여하기

SQL에서 쿼리문의 결과가 출력될 때, 칼럼명이 칼럼에 대한 헤딩(heading)으로 출력됩니다.

AS로 칼럼에 별칭 부여하기

칼럼명 대신 별칭을 출력하고자 하면 칼럼을 기술한 바로 뒤에 AS 라는 키워드를 쓴 후 별칭을 기술합니다.

"" 로 별칭 부여하기

칼럼명과 별칭 사이에 공백을 추가하거나 특수문자( $, _, #, 등)를 추가하거나 대소문자를 구분해야 하는 경우에는 ""을 사용하여 별칭을 부여해야 합니다.


중복된 데이터를 한번씩만 출력하게 하는 DISTINCT

중복되는 부서번호를 한 번씩만 출력하기 위해서는 키워드 DISTINCT를 사용합니다.


5.DUAL 테이블

hr이라는 데이터베이스안에 DUAL 이라는 테이블이 있다. SQL안에서 연산을 사용하는 연습장같은 공간이다.

  • DUAL 테이블의 구조를 살펴보기 위해서 DESC 명령어를 사용한다.

  • DUAL 테이블은 DUMMY라는 단 하나의 칼럼으로 구성되어 있다.
  • 이 칼럼에는 최대 길이는 1이다.

  • DUMMY 칼럼엔 과연 어떤 값이 저장되어 있을까?

DUAL 테이블은 DUMMY라는 단 하나의 칼럼에 X라는 단 하나의 로우만을 저장하고 있으나 이 값은 아무런 의미가 없습니다.

쿼리문의 수행 결과가 하나의 로우로 출력되도록 하기 위해서 단 하나의 로우를 구성하고 있을 뿐입니다.

0개의 댓글