JAVA를 잡아라!...
SQL - 1. 데이터베이스와 SQL의 기초 본문
#1 데이터베이스(database, DB) 의 기본 개념
▶ 정의
- 데이터 : 컴퓨터가 처리할 수 있는 자료
- 연관된 데이터를 모아 일정한 형태로 저장해 놓은 것
- 여러 시스템 or 사용자가 데이터를 동시에 공유하고 사용하기 위해 통합 저장한 데이터의 집합
▶ 목적
- 데이터 중복을 최소화해서 조직의 목적에 맞게 효율적으로 관리하기 위해 사용
▶ 데이터베이스 관리 시스템(database management system, DBMS)
- 데이터의 입력, 수정, 삭제 등 다양한 기능을 제공하는 별도의 소프트웨어
- DB는 데이터를 담는 통, DBMS는 이 통을 관리하는 소프트웨어
- DB에 데이터를 저장하거나 삭제하는 모든 작업은 DBMS를 거쳐야함
#2 데이터베이스 종류
DB는 저장 방법에 따라 계층법, 네트워크형, 키-값, 관계형으로 분류
▶ 계층형 데이터베이스
- 데이터가 부모와 자식 관계를 이루는 트리 구조
- 부모 레코드가 여러 자식 레코드를 가짐
- 레코드 : 데이터베이스 테이블에 저장된 값들의 모임으로 행(row)라고도 불림
- 단점 : 데이터 중복 발생이 쉬움, 데이터가 상하 종속 관계라서 프로세스 변경이 어려움
▶ 네트워크형 데이터베이스
- 데이터를 노드로 표현한 모델
- 노드는 네트워크상에 있으며 서로 대등한 관계임
- 레코드 간의 관계를 일대다 or 다대다로 표현
- 단점 : 종속성 문제가 생기기 쉬워 데이터베이스 구조를 변경하기 어려움
▶ 키-값 데이터베이스
- 키-값을 일대일 대응해 데이터를 저장하는 비관계형 데이터베이스 유형
- 데이터 중복이 발생하며 비정형 데이터 저장에 유리함
▶ 관계형 데이터베이스
- 데이터를 열(column)과 행(row)으로 구성한 테이블로 정리
- 고유키(primary key)가 각 행을 식별
- 데이터는 행 단위로 저장되며, 각 항목의 속성은 열이라고 표현
- 열 속성에 따라 데이터 유형이 정해짐
열 | 각 열은 고유한 이름을 가지며 자신만의 타입을 가짐 열은 필드(field) or 속성(attribute)라고도 함 |
행 | 관계된 데이터의 묶음 한 테이블의 모든 행은 같은 수의 열을 가짐 행은 튜플(tuple) or 레코드(record)라고도 함 |
테이블 | 행과 열 값들의 모음 도메인 특성에 따라 데이터를 논리적으로 그룹화해 놓은 것 |
#3 SQL이란 무엇인가
관계형 데이터베이스 관리 시스템(RDBMS)의 데이터를 관리하는 프로그래밍 언어
▶ DBMS 종류에 따른 SQL 종류
DBMS | SQL 명칭 |
SQL Server | Transact-SQL(T-SQL) |
Oracle | PL/SQL |
MySQL | SQL |
국제 표준 | ANSI SQL |
▶ SQL 문법 종류
1) 데이터 정의 언어(DDL) : 데이터베이스를 정의하는 언어
- CREATE : 데이터베이스 또는 테이블 생성
- ALTER : 테이블 수정
- DROP : 데이터베이스 또는 테이블 삭제
- TRUNCATE : 테이블 초기화
2) 데이터 조작 언어(DML) : 데이터베이스에 입력된 데이터를 검색, 입력, 수정, 삭제
- SELECT : 데이터 검색
- INSERT : 데이터 입력
- UPDATE : 데이터 수정
- DELETE : 데이터 삭제
3) 데이터 제어 언어(DCL) : 데이터베이스에 접근하거나 객체에 권한을 부여하는 등의 역할
- GRANT : 특정 데이터베이스 사용자에게 작업의 특정 수행 권한을 부여
- REVOKE : 특정 데이터베이스 사용자에게 작업의 특정 수행 권한을 삭제
- COMMIT : 트랜잭션 자겁을 완료하는 역할
- ROLLBACK : 트랜잭션 작업을 취소하거나 이전 상태로 복구하는 역할
#4 SQL을 배워야 하는 이유
- 대부분의 데이터는 SQL을 사용할 수 있는 RDBMS에 저장됨
- RDBMS에 저장된 데이터를 추출하려면 SQL 문법을 사용해 컴퓨터에 명령을 내려야 함
- RDBMS가 아닌 시스템에도 SQL과 비슷한 문법을 사용해 데이터 추출 가능
- 데이터 분석의 시작은 데이터 추출
'DBMS_SQL > Oracle' 카테고리의 다른 글
SQL - 6. 서브 쿼리 (Subquery) (0) | 2023.12.25 |
---|---|
SQL - 5. 조인 (Join) (0) | 2023.12.25 |
SQL - 4. 자료형 (0) | 2023.12.23 |
SQL - 3. 테이블 생성 & 데이터 조작 (DDL & DLC) (0) | 2023.12.22 |
SQL - 2. SELECT 문 : 데이터 검색_WHERE, ORDER BY, LIKE, GROUP BY (1) | 2023.12.22 |