오늘은 노드 심화주차 중 AWS, SQL에 대해 학습하였다.
전부터 SQL이 땡기지 않아 미루고 미루었었는데 더이상 미룰 수 없게 되었다...😂😂
[ 오늘 푼 알고리즘 코드카타 ]
아래의 내용은 SQL 학습한 것에 대한 정리본이다.
관계형 데이터베이스란 각 데이터를 '테이블' 구조로 저장합니다. 고유한 데이터를 나타내는 행과 데이터의 속성을 나타내는 열로 구성되어있고 테이블 간 서로 연결할 수 있으며 이 연결을 통해 복잡한 데이터를 관리할 수 있습니다.
MySQL은 오픈 소스 데이터베이스로 무료입니다.
DB를 관리하는 가장 대표적 언어인 SQL을 사용하여 데이터를 조작하고 관리하며 ACID를 준수하여 구현된 데이터베이스로 트랜잭션을 안전하게 처리할 수 있습니다.
SQL은 데이터베이스에서 사용되는 생성, 삽입, 조회 명령문을 SQL이라고 부릅니다.
SQL의 종류로는 DDL, DML, DCL, TCL 대표적인 4가지 유형이 있습니다.
DDL
데이터를 정의할 때 사용되는 문법으로 생성, 수정, 삭제 등이 있습니다.
DML
DB에서 데이터를 조작할 때 사용되는 문법으로 저장,삭제,수정,조회 등이 있습니다.
DCL
DB에 대한 권한과 관련된 문법입니다.
TCL
DB 내 트랜잭션을 관리하는 문법으로 시작, 종료, 롤백을 수행할 때 사용
제약 조건은 컬럼들 간 제한사항을 관리하고 조건 위반 데이터를 방지하여 DB의 무결성을 보장합니다.
고유 제약 조건 (UNIQUE)
테이블에 소속된 특정 컬럼이 중복된 키를 가질 수 없음
사용자 아이디,이메일 등의 고유 정보를 저장할 때 사용
NULL 제약 조건 (NULL)
특정 컬럼이 공백을 입력받지 않도록 설정하거나, 무조건 값을 입력받도록 설정하는 조건
기본키 제약 조건 (primary key)
테이블 내에서 각 행을 고유하게 식별할 수 있도록 보장하는 조건
외래키 제약 조건 (Foreign Key)
테이블 간 관계를 설정하는 조건, 다른 테이블의 특정 행을 참조
CASCADE
FOREIGN KEY (userId) REFERENCES Users(userId)
ON DELETE CASCADE
ON UPDATE CASCADE;
NO ACTION
FOREIGN KEY (userId) REFERENCES Users(userId)
ON DELETE NO ACTION
ON UPDATE NO ACTION;
SET NULL
FOREIGN KEY (userId) REFERENCES Users(userId)
ON DELETE SET NULL
ON UPDATE SET NULL;
SET DEFAULT
FOREIGN KEY (userId) REFERENCES Users(userId)
ON DELETE SET DEFAULT
ON UPDATE SET DEFAULT;