데이터베이스를 알기에 앞서 정보란 무엇이고 데이터란 무엇일까? 이 둘은 어떻게 구분 할 수 있을까?
그것은 바로 '가공'의 차이에 있다.
'짱구, 철수, 유리, 10, 11, 10, 서울, 부산, 수원'은 각각 있을때 데이터에 불과하다.
이름 | 연령 | 주거지 |
---|---|---|
짱구 | 10 | 서울 |
철수 | 11 | 부산 |
유리 | 10 | 수원 |
하지만 위의 표처럼 데이터를 가공했을 때 정보라고 할 수 있다.
데이터베이스는 자료의 모음으로 데이터를 체계화 ∙ 구조화하여 통합 관리하는 정보의 집합이다. 이렇게 정리된 데이터는 검색과 갱신의 효율을 높인다.
데이터베이스를 좀 더 효과적으로 운영하고 관리하고자 하는 목적으로 만들어진 것이 데이터베이스 관리 시스템(Database Managment system)이다.
다수의 사용자 또는 응용프로그램의 요구사항을 관리함으로써 그 데이터가 어디에 어떻게 저장되는지 몰라도 다중 사용자 환경에서 누구나 데이터를 이용할 수 있도록 해준다.
데이터베이스는 테이블로 구성되며 그 테이블들은 컬럼으로 연결한 것이다.
이때, 각 테이블은 낭비되는 공간 없이 효율적으로 데이터를 저장하도록 한다. 이렇게 나뉘어진 테이블들은 상위 정보를 저장하는 주 키(Primary key)와 하위 정보를 저장하는 테이블의 외래 키(Foreign key)를 이용하여 연결되고 각 테이블의 연관된 정보를 얻을 수 있도록 한다.
위의 관계형 데이터베이스 관리 시스템(RDBMS)의 데이터를 관리하기 위해 설계된 것이 SQL이다. SQL은 SQL 구문을 통해 테이블 내의 데이터를 검색하거나 조작하는 등으로 사용된다. 그 구문은 다음과 같다.
데이터 정의 언어(DDL: Data Definition Language)
데이터를 생성(Create), 수정(Update), 삭제(Delete)하는 역할을 한다.
데이터 조작 언어(DML: Data Manipulation Language)
데이터베이스에 등록된 레코드를 조회(Select),수정(Update),삭제(Delete)하는 역할을 한다.
데이터 제어 언어(DCL: Data Control Language)
데이터의 사용, 접근에 대한 권한(Grant)을 주는 역할을 한다.
트렌젝션 제어 언어(TCL: Transaction Control Language)
트렌젝션을 제어할때 사용한다.
이후 추가 공부 내용