반응형
이 글은 데이터베이스, DBMS, 관계형 데이터베이스, SQL 정의를 담고 있습니다.
데이터베이스(Database) 정의
데이터를 타인과 공유/사용하기 위해, 체계화+통합+관리하는 데이터 집합체
ex. 데이터가 모여있는 "파일"
DBMS와 관계형 데이터베이스 정의
- DBMS(Database Management System)
👩💻사용자 - 🗂️데이터베이스 간 사용자가 요구하는 정보 생성+데이터베이스 관리하는 SW
- 관계형 데이터베이스(Relational Database)
관계가 있는 데이터 테이블(표)가 모여 있는 데이터 저장 공간
아래는 DB-Engines에서 확인할 수 있는 DBMS 랭크 차트(2024/03 기준)이다.
* 예전에 SQL 공부 시작에 앞서 어떤 DMBS가 자주 쓰이는지 확인하고자 들어갔고, 결론적으로 MySQL을 선택해서 공부했다.
SQL(Structured Query Language) 정의
데이터베이스에서 데이터 정의+조작+제어하는 언어. 다시 말해, 데이터를 활용하기 위해 사용하는 컴퓨터 언어이다.
*각 DBMS마다 SQL 키워드나 예약어 등에 조금씩 차이가 있다.
SQL의 네 가지 문법은 DDL, DML, DCL, TCL로 나뉜다.
- 정의어(Data Definition Language, DDL)
- CREATE, ALTER, RENAME, DROP, TRUNCATE
- DB를 정의 할 때 사용하는 언어로, 생성/수정/삭제/초기화에 사용한다.
- 꿀팁: 시험에 출제되는 개념이기도 해서 나는 암기할 때 CARD로 외웠다.
- 조작어(Data Manipulation Language, DML)
- SELECT, UPDATE, INSERT, DELETE
- DB 테이블의 컬럼과 로우를 조작할 때 사용하는 언어로, 선택(조회)/수정/추가/삭제에 사용한다.
- 꿀팁: 이건 SUID로 외움
- 제어어(Data Control Language, DCL): GRANT, REVOKE
- DB 접근 혹은 제어할 때 사용하는 언어로, 권한(보안)과 관련 있다. 권한 부여/회수에 사용한다.
- 꿀팁: 이건 GR로 외움(욕 같음ㅋ)
- 트랜젝션 제어어(Transaction Contrl Language, TCL): COMMIT, ROLLBACK, SAVEPOINT
- DB 시스템의 트랜젝션 제어 혹은 관리할 때 사용하는 언어로, DB의 일관성과 무결성과 관련있다. 작업 내용 영구 저장/되돌리기/되돌리기 위한 저장점 설정에 사용한다.
반응형