Day 31 : 데이터베이스 관리 시스템이란?
데이터베이스
: 조직화된 정보의 집합
데이터베이스 관리 시스템 (DBMS)
: 연관성 있는 데이터들의 집합을 효율적으로 응용하기 위해 구성된 소트프웨어들의 집합
: 데이터베이스 내에 정보를 생성, 변경, 조회, 저장할 수 있도록 하는 시스템적인 방법을 제공
관계형 데이터 베이스
: 정보 저장을 위해 관계나 2차원 테이블을 이용
: 테이블은 표처럼 볼 수 있도록 Row(행)와 Column(열)으로 구성됨
대표적 데이터 타입
1. CHAR(size)
: size 크기의 고정 길이 문자 데이터 타입
: 나머지 공간이 공백으로 채워짐
2. VARCHAR2(size)
: size 크기의 가변 길이 문자 데이터 타입
: 데이터에 의해서 저장 공간이 자동 할당
3. NUMBER(precision, scale)
: precision은 소수점을 포함한 전체 자리수, scale은 소수점 이하 자리수를 지정
: precision만 지정하면 소수점 이하는 반올림
: 모두 생략하면 입력한 데이터 값만큼 공간이 할당됨
데이터 무결정 제약 조건
1. NOT NULL
: NULL - 할당 받지 않은 값, 아직 무엇인지 모르는 값 (0이나 공백과는 다름)
: 칼럼에 NULL을 저장하지 못하도록 하는 제약 조건
2. 기본키 제약조건 (PK, Primary Key)
: 한 테이블 내에서 칼럼이 동일한 값을 가질 수 없도록 하는 제약 조건
3. 외래키 제약조건 (FK, Foreign Key)
: 특정 테이블의 칼럼이 다른 테이블의 칼럼을 참조 (부모 테이블 / 참조 테이블로 나뉨)
SQL (Structured Query Language)
: 데이터베이스의 구조를 정의하거나 데이터베이스에 저장된 데이터를 조회, 입력, 수정, 삭제하기 위한 목적으로 사용되는 관계형 데이터 베이스 표준 언어
1. 데이터 조작어 (DML : Data Manipulation Language)
- SELECT : 데이터 검색 - 질의어 (DQL : Data Query Language)
- INSERT : 데이터 입력
- UPDATE : 데이터 수정
- DELETE : 데이터 삭제
2. 데이터 정의어 (DDL : Data Definition Language)
- CREATE : 데이터베이스 객체 생성
- ALTER : 데이터베이스 객체 변경
- DROP : 데이터베이스 객체 삭제
- RENAME : 데이터베이스 객체 이름 변경
- TRUNCATE : 데이터 및 저장 공간 삭제
3. 트랜잭션 처리어 (TCL : Transation Control Language)
- COMMIT : 트랜잭션의 정상적인 종료 처리
- ROLLBACK : 트랜잭션 취소
- SAVEPOINT : 트랜잭션 내에 임시 저장점 설정
4. 데이터 제어어 (DCL : Data Control Language)
- GRANT : 데이터베이스 객체에 대한 접근 권한 부여
- REVOKE : 데이터베이스 객체에 대한 접근 권한 취소