[TIL] 24.09.04 WED

GDORI·2024년 9월 4일
0

TIL

목록 보기
31/143
post-thumbnail

오늘은 노드 심화주차 중 AWS, SQL에 대해 학습하였다.
전부터 SQL이 땡기지 않아 미루고 미루었었는데 더이상 미룰 수 없게 되었다...😂😂

[ 오늘 푼 알고리즘 코드카타 ]

131128. 숫자 짝꿍

140108. 문자열 나누기

160586. 대충 만든 자판

42862. 체육복

아래의 내용은 SQL 학습한 것에 대한 정리본이다.

관계형 데이터베이스(RDB)

관계형 데이터베이스란 각 데이터를 '테이블' 구조로 저장합니다. 고유한 데이터를 나타내는 행과 데이터의 속성을 나타내는 열로 구성되어있고 테이블 간 서로 연결할 수 있으며 이 연결을 통해 복잡한 데이터를 관리할 수 있습니다.

MySQL

MySQL은 오픈 소스 데이터베이스로 무료입니다.
DB를 관리하는 가장 대표적 언어인 SQL을 사용하여 데이터를 조작하고 관리하며 ACID를 준수하여 구현된 데이터베이스로 트랜잭션을 안전하게 처리할 수 있습니다.

SQL이란,

SQL은 데이터베이스에서 사용되는 생성, 삽입, 조회 명령문을 SQL이라고 부릅니다.

SQL 종류

SQL의 종류로는 DDL, DML, DCL, TCL 대표적인 4가지 유형이 있습니다.


DDL
데이터를 정의할 때 사용되는 문법으로 생성, 수정, 삭제 등이 있습니다.

  • CREATE : DB,TABLE,VIEW,INDEX 등을 생성할 때 사용
  • DROP : DB, TABLE, VIEW, INDEX 등을 삭제할 때 사용
  • ALTER : DB, TABLE 등의 속성을 변경할 때 사용

DML
DB에서 데이터를 조작할 때 사용되는 문법으로 저장,삭제,수정,조회 등이 있습니다.

  • SELECT : 테이블에서 원하는 데이터들을 조회할 때 사용
  • INSERT : 테이블에 새로운 데이터들을 삽입할 때 사용
  • DELETE : 테이블에서 조건에 맞는 데이터를 삭제할 때 사용
  • UPDATE : 테이블에서 조건에 맞는 데이터를 수정할 때 사용

DCL
DB에 대한 권한과 관련된 문법입니다.

  • GRANT : DB에서 특정한 유저에게 사용 권한을 부여할 때 사용
  • REVOKE : DB에서 특정 유저에게 권환을 취소할 때 사용

TCL
DB 내 트랜잭션을 관리하는 문법으로 시작, 종료, 롤백을 수행할 때 사용

  • COMMIT : DB 작업이 정상적으로 완료되었음을 알려줌
  • ROLLBACK : DB 작업이 비정상적으로 완료되었음을 알려줌

SQL 제약조건

제약 조건은 컬럼들 간 제한사항을 관리하고 조건 위반 데이터를 방지하여 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

    • 참조하고 있는 개체가 변경/삭제될 경우 현재 데이터를 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;
profile
하루 최소 1시간이라도 공부하자..

0개의 댓글