본 post는 K-MOOC 고려사이버대학교(매치업) 이건길 교수님의 SQL 정형 데이터 분석 강의를 정리한 내용입니다.
Intro
SQL의 개념을 이해하고 설명할 수 있습니다. 데이터베이스를 정의하여 활용할 수 있습니다. 테이블을 정의하여 활용할 수 있습니다.
SQL 개요
- SQL 정의
- SQL(Structured Query Language)이란?
- 데이터베이스에 접근할 수 있는 데이터베이스 언어입니다.
- 1974년 IBM 연구소에서 발표한 SEQUEL(Strructured English QUEry Language)에서 유래했습니다.
- 관계 대수와 관계 해석을 기초로 한 고급 데이터 언어입니다.
- MySQL, DB2, SQL Server, ORACLE, INFORMIX, SYBASE 등 관계형데이터베이스에서 모두 사용합니다.
- SQL 발전과정
SQL 발전과정
http://www.kmooc.kr/courses/course-v1:MA_CUK+MATCHUP_CUK03+2022_2/course/ - SQL 특징
SQL 특징
http://www.kmooc.kr/courses/course-v1:MA_CUK+MATCHUP_CUK03+2022_2/course/ - 관계 연산과 SQL
관계 연산과 SQL
http://www.kmooc.kr/courses/course-v1:MA_CUK+MATCHUP_CUK03+2022_2/course/
- SQL(Structured Query Language)이란?
- SQL 명령어
- SQL 명령어 종류
SQL 명령어 종류
http://www.kmooc.kr/courses/course-v1:MA_CUK+MATCHUP_CUK03+2022_2/course/
SQL 명령어 예
http://www.kmooc.kr/courses/course-v1:MA_CUK+MATCHUP_CUK03+2022_2/course/
- SQL 명령어 종류
데이터베이스 정의
- 데이터 저장 구조
- 관계형 DBMS
관계형 DBMS
http://www.kmooc.kr/courses/course-v1:MA_CUK+MATCHUP_CUK03+2022_2/course/ - ORACLE 데이터 저장 구조
- 무결성을 강조하는 구조로 금융권에서 많이 사용합니다.
- MySQL/MariaDB 저장 구조도 이와 유사합니다.
ORACLE 데이터 저장 구조
http://www.kmooc.kr/courses/course-v1:MA_CUK+MATCHUP_CUK03+2022_2/course/
ORACLE 데이터 저장 구조
http://www.kmooc.kr/courses/course-v1:MA_CUK+MATCHUP_CUK03+2022_2/course/
- 관계형 DBMS
- SQL을 이용한 데이터베이스 생성
- CREATE DATABASE 명령어 - SQL Server, MySQL/MariaDB
SQL 명령어 종류
http://www.kmooc.kr/courses/course-v1:MA_CUK+MATCHUP_CUK03+2022_2/course/
- CREATE DATABASE 명령어 - SQL Server, MySQL/MariaDB
테이블 정의
- SQL 테이블 정의
- 테이블 구조
SQL 테이블 구조
http://www.kmooc.kr/courses/course-v1:MA_CUK+MATCHUP_CUK03+2022_2/course/ - CREATE TABLE 명령어
CREATE TABLE 명령어 - 형식
http://www.kmooc.kr/courses/course-v1:MA_CUK+MATCHUP_CUK03+2022_2/course/
CREATE TABLE 명령어 - 컬럼 제약
http://www.kmooc.kr/courses/course-v1:MA_CUK+MATCHUP_CUK03+2022_2/course/
CREATE TABLE 명령어 - 테이블 제약
http://www.kmooc.kr/courses/course-v1:MA_CUK+MATCHUP_CUK03+2022_2/course/
- 테이블 구조
- 제약조건
- 정의
- 데이터베이스 무결성을 구현하기 위한 도구입니다.
- 컬럼이나 테이블에 저장되는 값이 준수해야 할 조건을 명시한 것입니다.
- ‘NOT NULL’, ‘PRIMARY KEY’, ‘UNIQUE’, ‘DEFAULT’, ‘CHECK’, ‘FOREIGN KEY’가 존재합니다.
- ‘PRIMARY KEY’ 제약조건
PRIMARY KEY 제약조건
http://www.kmooc.kr/courses/course-v1:MA_CUK+MATCHUP_CUK03+2022_2/course/ - ‘NOT NULL’ 제약조건
NOT NULL 제약조건
http://www.kmooc.kr/courses/course-v1:MA_CUK+MATCHUP_CUK03+2022_2/course/ - ‘DEFAULT’ 제약조건
DEFAULT 제약조건
http://www.kmooc.kr/courses/course-v1:MA_CUK+MATCHUP_CUK03+2022_2/course/ - ‘CHECK’ 제약조건
- ‘CKECK’ 제약조건을 사용하면 데이터의 무결성을 지킬 수 있지만 작업의 로드가 높아질 수 있는 단점이 있습니다.
CHECK 제약조건
http://www.kmooc.kr/courses/course-v1:MA_CUK+MATCHUP_CUK03+2022_2/course/
- ‘CKECK’ 제약조건을 사용하면 데이터의 무결성을 지킬 수 있지만 작업의 로드가 높아질 수 있는 단점이 있습니다.
- ‘UNIQUE’ 제약조건
UNIQUE 제약조건
http://www.kmooc.kr/courses/course-v1:MA_CUK+MATCHUP_CUK03+2022_2/course/ - ‘FOREIGN KEY’ 제약조건 - 테이블 정의 시
FOREIGN KEY’ 제약조건 - 테이블 정의 시
http://www.kmooc.kr/courses/course-v1:MA_CUK+MATCHUP_CUK03+2022_2/course/ - ‘FOREIGN KEY’ 제약조건 - 제약조건 추가
FOREIGN KEY’ 제약조건 - 제약조건 추가
http://www.kmooc.kr/courses/course-v1:MA_CUK+MATCHUP_CUK03+2022_2/course/
- 정의
- SQL 테이블 변경
- 테이블 삭제 명령어
테이블 삭제 명령어
http://www.kmooc.kr/courses/course-v1:MA_CUK+MATCHUP_CUK03+2022_2/course/ - 테이블 변경 명령어
테이블 변경 명령어
http://www.kmooc.kr/courses/course-v1:MA_CUK+MATCHUP_CUK03+2022_2/course/ - 컬럼의 추가
컬럼의 추가
http://www.kmooc.kr/courses/course-v1:MA_CUK+MATCHUP_CUK03+2022_2/course/ - 컬럼의 수정
컬럼의 수정
http://www.kmooc.kr/courses/course-v1:MA_CUK+MATCHUP_CUK03+2022_2/course/ - 컬럼의 삭제 컬럼의 삭제
http://www.kmooc.kr/courses/course-v1:MA_CUK+MATCHUP_CUK03+2022_2/course/
- 테이블 삭제 명령어
Take Home Message
SQL 데이터베이스와 테이블의 생성/수정/삭제 등 다루는 법을 알 수 있었습니다.