1. SQL 이란?
- Structured Query Language, 관리형 데이터베이스 관리 시스템과 대화하기 위한 언어
- 데이터베이스 관리 시스템에게 요청하는 것을 질의 (쿼리; Query)라고 한다.
- SQL에는 DDL (데이터 정의 언어, 데이터베이스나 테이블을 작성하는 것), DML (데이터 조작 언어, 데이터를 검색, 추가, 수정, 삭제 하는 것), DCL (데이터 제어 언어) 등이 있다.
2. 데이터베이스 관리 시스템 (DBMS; Database Management System)
- 실제 데이터를 저장하거나 가져오는 것은 DBMS의 일이다.
- 사용자의 조작은 다음과 같은 흐름으로 데이터베이스에 도달한다.
① 사용자가 소프트웨어를 조작한다.
② 소프트웨어는 DBMS에 요청을 보낸다.
③ DBMS는 소프트웨어의 요청을 받아서 데이터베이스를 조작한다.
④ 요청에 맞는 처리를 수행하고, 소프트웨어에게 결과를 반환한다.
⑤ 사용자가 원하는 형태로 결과를 표시한다.
3. 관계형 데이터베이스란
- 행 (Row, Record), 열 (Column, Field)으로 구성된 테이블 (Table)
- 기본 키 (Primary Key)
- 연결 키 : 여러 개의 열을 조합하여 하나의 기본 키로 만들 수 있음.
- 뷰 (View) : 실제 테이블은 아니지만, 자주 사용하는 SQL문을 뷰로 저장해 두어 편리하게 사용할 수 있음. 뷰에서도 데이터의 등록, 수정, 삭제, 검색이 가능함.
- 쿼리의 내용인 SQL문은 사용자가 작성하는 경우와 사용자가 간단히 조작을 함으로서 소프트웨어가 작성해 주는 경우가 있다.
- SQL로 할 수 있는 일 : 검색 / 추가 / 삭제 / 수정
참고. 객체 지향 데이터베이스
- 표 형식으로 된 RDB와는 달리 각 데이터가 틀로 만들 수 없는 형태로 존재하는 것을 객체 지향 데이터베이스 (OODB; Object Oriented Database)라고 한다.
- 객체 지향형 대표 프로그래밍 언어 : JAVA
- 객체 지향형 프로그래밍에서는 데이터나 그것을 처리하는 장치 등을 통틀어 사물 = 객체 (Object)로 본다. 그리고 각 객체에 어떤 기능을 줄까 라는 개념을 가지고 프로그래밍을 해나간다. 즉, 여러가지 기능을 가진 몇 개의 부품 (객체)을 조합하여 큰 것 (프로그램)을 만든다라는 개념이다.