Oracle - 기본구조

정원·2022년 12월 20일

Oracle

목록 보기
1/3

22.12.20 DB란?

데이터베이스(DataBase)란?

  • 수 만은 데이터들을 관리하기 위한 수다느로 사용된다.
  • 데이터의 추가, 삭제, 검색, 수정, 이동 등의 기능이 있다.
  • 데이터베이스를 관리하는 도구가 DBMS(DataBase Management System)이다.
  • DBMS는 SQL언어와 에디터베이스를 연결해주는 도구이다.
  • 가장 많이 사용되는 DBMS는 RDBMS(관계형 데이터베이스 : Relational DBMS)이다.
  • 흔히 사용하는 관계형 데이터베이스 : Oracle, MySQL, MS SQL

SQL이란 ?

  • Structured Query Language의 약자로서
    데이터에비스로부터 데이터를 조회하고 삭제하는 등의 작업을 수행할 때 사용하는 언어.
  • SQL 은 대/소문자를 구분하지 않습니다.
  • 데이터 값을 대/소문자를 구분한다.

테이블과 레코드

  • 테이블 : RDBMS에서 데이터를 저장하는 장소
  • 스키마(Schema) : 테이블의 구조와 관련된 정보를 테이블 스키마라고 부른다.
  • 테이블 구조 :
    • 컬럼타입
    • 컬럼의 길이
    • 컬럼(Column) : 각각의 정보를 저장
  • 레코드(record) : 각 컬럼에 저장된 데이터 값

SQL 기본 명령어

  • DML 데이터 조작어(Data Manipulation Language):
    데이터 삽입, 조회, 수정, 삭제

  • DDL 데이터 정의어(Data Definition Language):
    테이블 생성, 변경, 삭제

  • TCL 트렌젝션 제어어(Transaction Control Language):
    데이터 조작어(DML) 명령어 실행, 취소, 임시저장

  • DCL 데이터 제어어(Data Control Language):
    데이터 접근 권한 부여, 제거

DML 데이터 조작어

  • SELECT : 데이터베이스로부터 데이터를 검색(조회)
    SELECT * FROM board;
  • INSERT : 새로운 행 입력
    INSERT INTO 테이블명 (컬럼1, 컬럼2)
        VALUES (값1, 값2);
  • UPDATE : 기존의 행 변경
    UPDATE 테이블명 SET 컬럼 = '값'
    	WHERE 컬럼 = 값;
  • DELETE : 기존의 행 제거
    DELETE 테이블명 
    	WHERE 컬럼 = 값;

DDL 데이터 정의어

  • CREATE : 데이블이나 인덱스, 뷰등 데이터베이스 객체를 생성
    테이터베이스 생성
    create database db이름 default character set utf8;
    사용자 계정 생성
    create user 계정명 identified by 암호
    테이블 생성
    CREATE TABLE 테이블명(
    컬럼명 데이터타입[(크기)][NOT NULL | NULL] [DEFAULT 값],
    .....
    컬럼명 데이터타입[(크기)][NOT NULL | NULL] [DEFAULT 값],
    [CONSTRAINT 기본키설정명 PRIMARY KEY (컬럼명[,컬럼명,...])],
    [CONSTRAINT 외래키설정명 FOREIGN KEY (컬럼명[,컬럼명,...])]
    REFERENCES 외부테이블명(컬럼명)];
  • ALTER : 이미 생성된 데이터베이스 객체를 수정
  • DROP : 생성된 데이터베이스 객체를 삭제
    DROP TABLE 테이블명;
    DROP USER 유저명;
    DROP FUNCTION 기능명;
  • TRUNCATE : 구조만 남기고 모든 데이터를 삭제
  • RENAME : 이름 변경

TCL 트렌젝션 제어어

  • COMMIT : 변경된 데이터를 최종 적용
  • ROLLBACK : 변경된 데이터를 적용하지 않고 COMMIT 이전으로 되돌림

DCL 데이터 제어어

  • GRANT : 사용자에게 특정 권한을 부여
    DB이름.* : 모든 테이블 접근을 허용.
GRANT 권한 on DB이름.데이블명 to 계정명
  • REVOKE : 사용자에게 부여된 권한을 회수

0개의 댓글