반응형
데이터베이스(DB)의 정의
- 여러 사람에게 공유되어 사용될 목적을 가지고, 구조적인 방식으로 관리되는 데이터들의 집합
데이터베이스 관리 시스템(DBMS: Database Management System)
- 데이터를 정리하고 보관하기 위한 용도로 사용되고 데이터 추가, 변경, 삭제, 검색 등의 기능을 수행
- 대표적인 DBMS 는 Oracle, MySQL
DBMS의 특성
- 실시간 접근성
- 컴퓨터가 접근할 수 있는 저장 장치에서 관리되는 데이터베이스는 지속적이고 비정형적인 질의에 대하여 실시간 처리가 가능해야 함
- 계속적인 변화
- 데이터베이스 상태는 동적
- 기존 데이터베이스에 새로운 데이터 삽입, 삭제, 갱신등의 변화를 주어 정확한 데이터 유지 필요
- 동시 공용
- 다수의 사용자가 동시에 각자 원하는 데이터에 접근하여 이용할 수 있어야 함
- 내용에 의한 참조
- 레코드의 주소나 위치에 의해서가 아니라 사용자가 요구하는 데이터의 내용, 즉 데이터가 가지고 있는 값에 따라 참조
SQL 사용을 위해 필요한 DB 용어
- 테이블
- 엑셀에서 스프레드 시트의 의미
- 동일한 두 개의 테이블 이름은 허락되지 않음
- 스키마(Schema)
- 테이블에 데이터가 저장되는 방식을 정의
- 데이터베이스에 존재하는 자료의 구조 및 내용과 자료들의 논리적, 물리적 특성에 대한 정보를 표현하는 논리적 구조
- 열(Column)
- 테이블을 구성하는 각각의 정보
- 테이블을 여러 가지 열로 나누는 일은 매우 중요
: 아래 CASE 2와 같이 데이터를 저장하는 경우 지역에 따른 고객의 분포에 대한 자료를 추출하고자 할 때 추가 작업없이 추출 가능
CASE 1. 전화번호를 한 개의 열에 모두 입력고객 ID 전화번호고객 ID 자택전화번호 123 0237003333 고객 ID 지역번호 전화번호 앞자리 전화번호 뒷자리 123 02 3700 3333
- 행(Row)
- 테이블의 데이터는 행에 저장됨
- 고객이 3명이면 3개의 행으로 구성
- 레코드라고 표현하기도 함
- 기본 키(Primary Key)
- 각 행을 고유하게 하는 열
- 기본 키는 테이블 생성 시 반드시 필요
SQL이란?
- Structured Query Language로, 데이터베이스에 접근할 수 있는 데이터 하부 언어를 지칭
SQL의 종류
- 데이터 정의어(DDL : Data Definition Language)
- 데이터가 저장된 공간이 ‘테이블’, 테이블 형식이 ‘스키마’라면 DDL은 데이터와 그 형식을 정의하는 언어
- CREATE: 데이터베이스 테이블 생성
- DROP : 데이터베이스 테이블 삭제
- ALTER : 기존 데이터베이스 테이블 재정의
- 데이터가 저장된 공간이 ‘테이블’, 테이블 형식이 ‘스키마’라면 DDL은 데이터와 그 형식을 정의하는 언어
- 데이터 조작어(DML : Data Manipulation Language)
- DDL로 테이블과 스키마를 만들었다면, DML 그 공간에 데이터를 저장, 수정, 삭제, 조회하는 언어
- INSERT : 테이블에 데이터 삽입
- DELETE : 테이블의 데이터 삭제
- UPDATE : 기존 테이블 안의 데이터 수정
- SELECT : 테이블 내 데이터 검색
- DDL로 테이블과 스키마를 만들었다면, DML 그 공간에 데이터를 저장, 수정, 삭제, 조회하는 언어
- 데이터 제어어(DCL : Data Control Language)
- 데이터 베이스 사용자의 권한 제어를 위해 사용되는 언어
- GRANT : 테이블에 권한 부여
- REVOKE : 부여한 권한 취소/회수
- 데이터 베이스 사용자의 권한 제어를 위해 사용되는 언어
반응형
'SQL' 카테고리의 다른 글
[SQL] WHERE 조건절을 이용해 데이터 추출하기 (0) | 2022.02.08 |
---|---|
[SQL] 열이름 변경해서 출력하기 (AS) (0) | 2022.02.08 |
[SQL] 중복되는 행 제거하기 (DISTINCT) (0) | 2022.02.07 |
[SQL] 데이터 정렬하기 (ORDER BY) (0) | 2022.01.20 |
[SQL] 데이터 가져오기 (SELECT) (0) | 2022.01.15 |