본문 바로가기

CS study/데이터베이스

1주차 스터디 노트(DB, 스키마, RDBMS, Key, 제약조건)

목차

     

    1. 파일시스템과 데이터베이스의 차이점에 대해서 설명해주세요.

    파일 시스템은 간단한 데이터 저장 목적으로 사용되고, 데이터베이스는 데이터의 일관성, 성능, 보안, 중복 최소화 등 다양한 측면에서 향상된 기능을 제공한다.

     

    언뜻 보면 두 구조는 비슷해 보인다. 하지만 핵심적으로 말하자면 다음과 같은 차이가 있을 것이다.

    파일시스템은 데이터를 파일 형태로 저장하며, 데이터베이스는 구조화된 방식으로 데이터를 저장한다.

     

    파일 시스템? : 데이터를 파일에 저장
    파일시스템은 운영 체제의 일부로, 파일을 저장하고 관리하는 방식이다. 데이터 접근과 관리가 기본적이고, 복잡한 쿼리나 트랜잭션 지원이 없다.

     

    데이터베이스? :  정의된 데이터 형식, 구조화된 데이터를 저장

    데이터를 테이블 등의 구조로 저장하며, 복잡한 쿼리, 트랜잭션, 동시성 제어 등 고급 기능을 제공한다.

     

    예를 들어 파일시스템에서는 문서, 이미지 파일을 간단하게 저장하고 검색한다. 데이터베이스에서는 사용자 정보, 금융 거래 등을 복잡한 조건으로 검색하고 처리한다.

     

    2. 데이터베이스의 특징에 대해 설명해주세요.

    데이터베이스란?

    데이터베이스는 특정 조직의 여러 사용자가 '공유'하여 사용할 수 있도록 '통합'해서 '저장'한 '운영' 데이터의 집합이다.

    https://wonsjung.tistory.com/375

     

     

    통합 데이터 : 각자 사용하던 데이터의 불일치 현상을 제거

    저장 데이터 : 문서로 보관되는 데이터가 아니라 디스크 등의 컴퓨터 저장장치에 저장된 데이터를 의미

    운영 데이터 : 조직의 목적을 위해 사용되는 데이터

    공유 데이터 : 사용자간 공동으로 사용되는 데이터를 의미

     

    이런 정의에 따라, 데이터베이스는 구조화, 데이터 무결성, 데이터 독립성, 보안 등의 특징을 가진다.

     

    데이터베이스의 특징 4가지

     

    1. 실시간 접근성(Real time accessibility)

    데이터베이스는 사용자나 애플리케이션의 요청에 즉각적으로 반응하고, 실시간으로 데이터에 접근하고 처리할 수 있어야 한다. 이를 통해 데이터는 실시간으로 갱신되며 사용자는 언제든지 최신 데이터에 접근할 수 있다.

     

    2. 계속적인 변화(Continuance Change)

    데이터베이스는 지속적으로 업데이트되고 수정될 수 있어야 한다.

    즉, 데이터는 추가, 삭제, 수정 등의 연산을 통해 계속적으로 변화하고 이러한 변화는 데이터베이스에 바로 반영되어야 한다.

     

    3. 동시 공유(Concurrent sharing)

    데이터베이스는 여러 사용자나 애플리케이션이 동시에 데이터에 접근하고 사용할 수 있어야 한다. 이는 데이터베이스 관리 시스템(DBMS)이 동시성 제어를 통해 데이터의 일관성과 정확성을 유지하는 것을 포함한다. 동시 공유는 효율적인 자원 사용과 높은 생산성을 가능하게 한다.

     

    4. 내용에 따른 참조(Reference by content)

    데이터베이스에서 데이터는 그 내용에 따라 참조된다.  데이터를 위치나 주소가 아닌 값이나 내용에 따라 검색하고 접근할 수 있다.

    예를 들자면 사용자는 데이터의 실제 저장 위치를 몰라도 특정 조건을 만족하는 데이터를 쿼리문으로 조회할 수 있다. 이는 데이터 관리의 유연성과 효율성을 높인다.

     

    3. DBMS는 뭘까요? 특징에 대해 설명해주세요.

    데이터베이스를 관리하고 운영하는 소프트웨어를 DBMS(Database Management System)라고 한다.

    다양한 데이터가 저장되어 있는 데이터베이스는 여러 명의 사용자나 응용 프로그램과 공유하고 동시에 접근이 가능해야  한다.

     

    다음과 같이 여러 사용자는 DBMS를 통해 동시 접근이 가능하게 된다. 네이버 참조.

     

     

    DBMS는 데이터베이스를 생성, 관리, 수정, 검색, 보안 유지 등을 담당한다.

    사용자와 응용 프로그램이 데이터베이스를 쉽게 사용할 수 있게 인터페이스를 제공하며, 효율적인 데이터 관리, 무결성 유지, 동시성 제어 등의 기능을 갖추고 있다.

     

    1) 데이터 독립성 : 물리적, 논리적 독립성
    2) 데이터 무결성 : 데이터의 유효성 검사를 통해 데이터 무결성을 구현
    3) 데이터 보안성 : 계정관리, 권한 설정
    4) 데이터 일관성 : 데이터의 불일치성을 배체
    5) 데이터 중복 최소화 : 자료의 중복과 데이터의 종속성을 해결
    6) 데이터 공유

     

     

    4. 스키마가 뭘까요? 3단계 데이터베이스 구조에 대해 설명해주세요.

    스키마 : 쉽게 말해서, 데이터베이스 내의 데이터가 어떻게 조직되고, 어떤 형태로 저장되는지를 정의하는 것이다.

     


    스키마는 데이터베이스의 논리적 구조를 정의한다. 3단계 데이터베이스 구조에서 구조는 각각 다음과 같이 정의된다.

     

    1. 외부 스키마(사용자 관점) : 데이터베이스를 사용하는 사용자나 애플리케이션의 관점에서 본 데이터베이스의 구조.

    사용자가 실제로 상호작용하는 화면이나 폼, 즉 사용자 인터페이스의 구조를 정의한다.

     

    예를 들어, 온라인 쇼핑몰에서 상품 목록을 보는 화면이 외부 스키마에 해당한다.

    • 상품명
    • 가격
    • 이미지
    • 설명

     

    2. 개념 스키마(전체적인 구조) : 데이터베이스의 전반적인 구조를 파악하는 데 중점

    전체 데이터베이스의 구조와 관계를 일반적인 수준에서 설명하는 스키마다. 외부스키마를 응용 인터페이스에서 맵핑(Mapping)을 통해 개념 스키마와 연동한다.

    여기서는 데이터베이스에 어떤 데이터가 저장되어 있는지, 그리고 그 데이터들이 어떻게 서로 연결되어 있는지를 정의한다.

     

    예를 들면, 쇼핑몰 데이터베이스에서 사용자 정보, 상품 정보, 주문 내역 등이 어떻게 서로 관련되어 있는지를 보여주는 것이 있다.

    • 상품: 상품ID, 상품명, 가격, 재고
    • 사용자: 사용자ID, 이름, 주소, 연락처
    • 주문: 주문ID, 사용자ID, 상품ID, 주문날짜

     

    3. 내부 스키마(물리적 저장 방식) : 데이터베이스 정의어(DDL)에 의한 실질적인 데이터베이스의 자료 저장 구조(자료구조와 크기)이자, 접근 경로의 완전하고 상세한 표현

     

    이것은 데이터가 실제로 데이터베이스 시스템 내에서 어떻게 저장되는지에 대한 구조를 의미한다.

    즉, 데이터의 물리적인 저장 방식을 다룬다. 여기에는 데이터를 저장하기 위한 파일 구조, 인덱스, 데이터 압축, 데이터의 물리적 경로 등이 포함된다.

     

    이 단계는 데이터베이스의 성능과 저장 효율성에 중요한 역할을 한다.

    • 데이터 파일 구조
    • 인덱싱 방법
    • 데이터 압축 방식
    • 백업 방법

     

     

    이를 통해 데이터 독립성을 보장받을 수 있다.

     

     

    5. 데이터 독립성에 대해서 설명해주세요.

    데이터베이스에서 데이터의 물리적, 논리적 구조 변경이 응용 프로그램에 영향을 미치지 않는 성질

    데이터 독립성은 논리적 데이터 독립성물리적 데이터 독립성으로 나뉜다.

     

     

    1. 논리적 데이터 독립성 

    데이터베이스 구조가 변경되어도 응용 프로그램이 수정될 필요가 없음을 의미한다.

    예를 들어, 테이블의 속성이나 관계가 추가되거나 삭제되어도 기존의 쿼리나 트랜잭션은 그대로 유지될 수 있다.

     

    2. 물리적 데이터 독립성

    데이터가 저장되는 방식의 변화(물리적 구조가 변경되어도) 응용 프로그램이나 사용자 쿼리에 영향을 주지 않는다는 것을 의미한다.

    데이터베이스의  논리적 구조나 데이터의 내용에 영향을 주지 않는 것을 말한다.

     

    의의 : 

    데이터 독립성을 통해 데이터베이스의 유지보수와 확장성을 향상시키는 장점을 가지며, 시스템의 안정성과 신뢰성을 높일 수 있다.

    또한, 데이터베이스의 성능이나 보안을 개선하기 위해 필요한 조치를 쉽게 적용할 수 있다.

     

    데이터 독립성 보장을 위한 데이터베이스 구조에는 3단계 데이터베이스 구조가 있다.

     

    6. RDBMS(관계형 데이터베이스 관리시스템)는 뭘까요?

    관계형 DBMS(Relational DBMS)는 줄여서 RDBMS라고 부른다.

    RDBMS는 데이터를 테이블 형태로 저장하며, 테이블 간의 관계를 통해 데이터를 조직한다. SQL(Structured Query Language)을 사용해 데이터를 관리하고, 트랜잭션 지원, 동시성 제어, 데이터 무결성 보장 등의 기능을 제공한다.

     

    MySQL뿐만 아니라, 대부분의 DBMS가 RDBMS 형태로 사용된다. RDBMS의 데이터베이스는 테이블(table)이라는 최소 단위로 구성되며, 이 테이블은 하나 이상의 열(column)과 행(row)으로 이루어져 있다.

     

    테이블의 예시. https://hongong.hanbit.co.kr/

     

    7. 릴레이션 스키마와 릴레이션 인스턴스에 대해서 설명해주세요.

    릴레이션 스키마는 테이블의 구조를 정의하고, 릴레이션 인스턴스는 테이블의 실제 데이터 집합이다.

     

    테이블의 스키마와 인스턴스. https://deftkang.tistory.com/50 참조.


    1. 릴레이션 스키마

    테이블의 뼈대로, 열(속성)의 이름과 타입을 정의한다. (기본적인 구조를 정의)

     

    속성(attribute) : 릴레이션 스키마의 열

    도메인(domain) : 속성이 가질 수 있는 값의 집합

    차수(degree) : 속성의 개수

     

    등이 테이블의 구조를 지칭하는 릴레이션 스키마를 의미한다.

     

    2. 릴레이션 인스턴스

    특정 시점에서 테이블에 저장된 행(레코드)의 실제 집합을 의미한다. (스키마에 따라 테이블에 실제로 저장되는 데이터의 집합)

     

    투플(tuple) : 릴레이션의 행

    카디날리티(cardinality) : 투플의 수

     

    8. 릴레이션의 차수와 카니덜리티에 대해 설명해주세요.

    7번에서 설명하였듯, 차수(degree)는 Attribute의 개수를 의미한다.

    카티널리티는 해당 테이블에 존재하는 tuple의 총 개수를 의미한다.

     

    9. 키(Key)에 대해서 설명해주세요. (슈퍼키, 후보키, 기본키, 대리키, 외래키)

    http://wiki.hash.kr/index.php/%EB%8C%80%EC%B2%B4%ED%82%A4

     

    키는 데이터베이스에서 테이블 내 레코드를 구별하고 관리하는 데 사용되는 중요한 개념이다.

     


    1. 슈퍼키: 테이블 내 각 레코드를 고유하게 식별할 수 있는 하나 이상의 속성(열)의 집합.

    가장 큰 개념으로, 슈퍼키는 테이블 내에서 각 행을 고유하게 식별할 수 있는 정보의 조합이다. 슈퍼키를 통해 개별 레코드를 구별할 수 있어야 한다.

     

    2. 후보키: 슈퍼키 중 최소성을 만족하는 키.

    후보키는 슈퍼키 중에서 가장 간단한 형태로, 필요 이상의 정보 없이 레코드를 구별할 수 있는 키이다.

    데이터베이스 내에서도 가장 간결하게 레코드를 식별할 수 있는 키를 후보키라고 한다.

     

    3. 기본키(PK) : 후보키 중 선택된 주 키.

    기본키는 후보키 중에서 선택되어, 각 레코드를 대표하는 주요 키 역할을 한다.

    NN, UNIQUE 등의 제약조건을 가진다. PK는 해당 테이블 내에서 반드시 유일해야 한다.

     

    4. 대리키: 인위적으로 테이블에 추가된, 고유한 식별자(PK)

    자연스럽게 데이터에서 파생되는 기본키를 사용하기 어려울 때, 인위적으로 생성된 고유 번호(예: 일련번호)를 사용한다. 이는 실제 데이터와는 관련이 없지만, 레코드를 유일하게 식별하는 데 사용된다.

     

    5. 외래키(FK): 다른 테이블의 기본키를 참조하는 키.

    외래키는 한 테이블의 키가 다른 테이블의 기본키(PK)와 연결되어 있는 경우를 말한다.

    이를 통해 두 테이블 간의 관계가 형성된다.

     

    10. 무결성 제약조건에 대해서 설명해주세요. (도메인 무결성, 개체 무결성, 참조 무결성)

    무결성과 무결성 제약조건?

    무결성(integrity)?
    저장된 데이터가 실제 세계에 존재하는 정보들을 모순 없이 반영하는 성질.

    데이터베이스에서 이러한 무결성을 유지하기 위해 정의된 규칙 또는 제약 조건을 무결성 제약이라고 한다.


    즉, 갖추어야 할 제약 조건을 항상 만족하도록 보장하는 성질무결성 제약(constraint) 또는 무결성 규칙(rule)이라 한다.

    정확성과 일관성을 유지하기 위한 규칙인 것이다.

     

     

    무결성 제약조건 종류

     

    https://jerryjerryjerry.tistory.com/50


    1. 도메인 무결성

    필드 값이 정의된 도메인에 속해야 한다. (정의되어 있는 영역을 벗어나지 않도록 규정하는 것)

    제약조건 : 도메인 무결성에는 CHECK, DEFAULT, NOT NULL 제약이 있다.

     

    2. 개체 무결성

    중복된 행이 없고, 각 행을 명확하고 고유하게 식별할 수 있다.

     

    개체 무결성은 데이터베이스의 각 행이 명확하고 고유하게 식별될 수 있도록 하는 규칙으로, 기본키를 통해 이를 주로 구현한다.

    그렇기에 기본키 제약이라고도 부른다. 하나의 테이블에 중복된 행이 존재하지 않도록 규정하는 것이다.
    즉, 모든 테이블이 기본키로 선택된 컬럼을 가져야 하며, 기본키가 고유하고 NULL이 아닌 값을 가져야 함.
    제약조건 : UNIQUE, PRIMARY KEY 가 있다.

     

     

    3. 참조 무결성

     

    외래키 값이 참조하는 테이블의 기본키 값과 일치해야 함. =
    기본키와 참조 키 간의 관계가 항상 유지되도록 보장

     

    이 규칙을 통해 테이블의 필드(컬럼)가 다른 테이블의 기본키를 참조할 때, 해당 참조 관계의 일관성과 정확성을 보장한다.

    참조 무결성을 구현하기 위해 '외래키(Foreign Key)'가 사용된다.
    제약조건: 참조 무결성을 지키기 위해 'FOREIGN KEY' 제약조건이 사용된다.

     

    11. 사용했던 데이터베이스에 대해서 설명해주세요. (오라클DB, MySQL, MariaDB, MongoDB 등)

     

    주로 RDBMS로 MySQL을 사용하였고, 현재 프로젝트에 PostgreSQL을 적용하여 조금 더 고급 함수를 사용해보고자 합니다.

     

    NoSQL의 경우 인바운트 캐시 메모리를 사용하기 위해 Redis, NoSQL 자료구조를 활용하고자 MongoDB, 검색 엔진 및 색인을 위해 Elasticsearch를 사용한 경험이 있습니다.

    ES를 사용하면서 느낀 경험을 아래 포스팅에 작성하였습니다.

     

    https://csg1353.tistory.com/127

     

    [Elasticsearch] RDBMS에 비해 왜 빠를까? 역인덱싱에 대해

    개요 NoSQL의 경우 일반적으로 RDBMS보다 빠르다고 하는데, 구체적으로 왜 그런지 조사해보았다. RDBMS(관계형 데이터베이스 관리 시스템)와 NoSQL(비관계형 데이터베이스)은 데이터를 저장하고 관리

    csg1353.tistory.com

     

    MySQL의 기본 서버 스토리지 엔진 : InnoDB

     

    MySQL 스토리지 엔진 종류

     - Inno 엔진

     - MyISAM 엔진

     - Memory 엔진

     - Archive 엔진

     - CSV 엔진

     - Federated 엔진

    InoDB

    InnoDB는 MySQL의 데이터베이스 엔진으로, MySQL의 모든 바이너리에 내장되었다.

    InnoDB 테이블의 각 데이터는 page 안에 나눠지고, 각 테이블을 구성하는 page들은 B-tree 인덱스 트리 데이터 구조안에 정렬되어 있다.

    장점.

    • 1. 트랜잭션 지원 (ACID)
    • 2. 클러스터형 인덱스

     

     

     

    • 3. row-level locking : InnoDB는 행 수준의 lock을 지원하기에 동시 작업이 가능
    • 4. 외래 키 제약조건: 외래 키를 통한 데이터 무결성 유지가 용이
    • 5. 자동 복구: 시스템 장애 시 자동으로 복구되어 데이터의 지속성을 보장

    단점.

    • 1. Deadlock 발생 : 노드 간의 데이터 체크로 인하여, Deadlock 발생 가능성이 존재한다.
    • 2. 많은 자원 소모(IO 및 메모리 사용) :
      InnoDB는 디스크 I/O가 많이 필요한 특성을 가지고 있어서 디스크 공간을 많이 사용하고 디스크 I/O 비용이 높을 수 있다.
    • 대용량 처리 과정에서 순간적으로 많은 자원을 소모합니다.
      3. 데이터 복구의 어려움



     

     

     

    참조

     

    1번 문항

    https://stackoverflow.com/questions/38120895/database-vs-file-system-storage

     

    Database vs File system storage

    Database ultimately stores the data in files, whereas File system also stores the data in files. In this case what is the difference between DB and File System. Is it in the way it is retrieved or

    stackoverflow.com

     

    https://www.educba.com/dbms-vs-file-system/

     

    DBMS vs File System | Top Most Useful differences You Need to Know

    Guide to DBMS vs File System. Here we also discuss the DBMS vs File System head to head comparison, key differences along with infographics.

    www.educba.com

     

    2번

     

    https://wonsjung.tistory.com/375

     

    데이터 베이스 기본 개념 + 데이터 베이스의 정의와 특징 그리고 분류

    데이터 베이스를 공부하기 전, 데이터 베이스를 이루고 있는 데이터는 무엇이고 데이터와 정보는 같은 것일까? 정보를 데이터와 같은 의미로 사용하는 경우가 많은데, 이 둘은 다른 개념이다.

    wonsjung.tistory.com

     

    https://freedata.tistory.com/47

     

    데이터 베이스 개념 특징

    *본 내용은 정보처리기사 공부에도 도움이 됩니다* 1. 데이터베이스란 체계화된 데이터 모임이다. 작성된 목록으로써 여러 응용 시스템들의 통합된 정보들을 저장하여 운영할 수 있는 공용 데이

    freedata.tistory.com

     

    3번

    https://hongong.hanbit.co.kr/%EB%8D%B0%EC%9D%B4%ED%84%B0%EB%B2%A0%EC%9D%B4%EC%8A%A4-%EC%9D%B4%ED%95%B4%ED%95%98%EA%B8%B0-databasedb-dbms-sql%EC%9D%98-%EA%B0%9C%EB%85%90/

     

    [데이터베이스 이해하기] Database(DB), DBMS, SQL의 개념

    데이터베이스(Database, DB)란? : 데이터의 저장소. DBMS(Database Management System, 데이터베이스 관리 시스템)란? 데이터베이스를 운영하고 관리하는 소프트웨어. 계층형, 망형, 관계형 DBMS 중 대부분의 DBM

    hongong.hanbit.co.kr

     

    https://ppomelo.tistory.com/49

     

    [SQLD] 3단계 데이터베이스 구조 & 데이터모델링의 세 가지 요소 ⭐️

    3단계 데이터베이스 구조 ⭐️ 3단계로 나눈 목적은 독립성을 위해 -> 즉, 검색을 용이하게 하기 위해서다. 3단계 구성의 데이터독립성 모델은 관계 데이터 모델의 핵심이다. 사상 (Mapping) 사상 예

    ppomelo.tistory.com

     

    4

     

    https://oversky.tistory.com/98

     

    스키마(외부,개념,내부)

    외부 스키마 외부 스키마는 전체적인 데이터베이스 구조인 개념 스키마의 요구사항과 일치하며, 결국 외부 스키마는 개념 스키마의 부분집합에 해당한다. 즉 외부 스키마는 주로 외부의 응용프

    oversky.tistory.com

     

    5.

    https://velog.io/@yoonuk/%EB%8D%B0%EC%9D%B4%ED%84%B0%EB%B2%A0%EC%9D%B4%EC%8A%A4-%EB%8D%B0%EC%9D%B4%ED%84%B0-%EB%8F%85%EB%A6%BD%EC%84%B1%EA%B3%BC-%EC%8A%A4%ED%82%A4%EB%A7%88

     

    [데이터베이스] 데이터 독립성과 스키마

    데이터 독립성이란 데이터베이스의 구조와 데이터의 내용이 서로 영향을 미치지 않는 것을 의미합니다. 데이터 독립성은 논리적 데이터 독립성과 물리적 데이터 독립성으로 나눌 수 있습니다.

    velog.io

     

    6.

    https://hongong.hanbit.co.kr/%EB%8D%B0%EC%9D%B4%ED%84%B0%EB%B2%A0%EC%9D%B4%EC%8A%A4-%EC%9D%B4%ED%95%B4%ED%95%98%EA%B8%B0-databasedb-dbms-sql%EC%9D%98-%EA%B0%9C%EB%85%90/

     

    [데이터베이스 이해하기] Database(DB), DBMS, SQL의 개념

    데이터베이스(Database, DB)란? : 데이터의 저장소. DBMS(Database Management System, 데이터베이스 관리 시스템)란? 데이터베이스를 운영하고 관리하는 소프트웨어. 계층형, 망형, 관계형 DBMS 중 대부분의 DBM

    hongong.hanbit.co.kr

     

    7

    https://deftkang.tistory.com/50

     

    [Database] 관계 데이터 모델의 개념, 릴레이션 스키마와 인스턴스

    관계 데이터 모델관계 데이터 모델은 수학의 집합이론에 근거하고 있어 튼튼한 이론적인 토대를 갖고 있다. 또한 관계 데이터 모델이 적용된 SQL 언어는 비절차적인 언어로 원하는 데이터를 쉽

    deftkang.tistory.com

     

     

    9.

    https://velog.io/@kon6443/DB-%EA%B8%B0%EB%B3%B8%ED%82%A4-%EC%99%B8%EB%9E%98%ED%82%A4-%ED%9B%84%EB%B3%B4%ED%82%A4-%EB%B3%B5%ED%95%A9%ED%82%A4-%EA%B0%9C%EB%85%90-4x1bgz5w

     

    [DB] 기본키 / 외래키 / 후보키 / 복합키 개념

    키(key)는 DB에서 조건을 만족하는 레코드를 찾거나 순서대로 정렬할 때 레코드를 서로 구분할 수 있는 기준이 되는 속성을 뜻한다. 키의 종류로는 다음과 같이 있다.Super key (수퍼키)Candidate key (후

    velog.io

     

    https://jerryjerryjerry.tistory.com/49

     

    [SQL] 키(슈퍼키,대체키,후보키,기본키,외래키)

    * 키(Key) - 열쇠는 무언가를 열거나 잠글 때 사용하는 것으로, 같은 것이 하나도 없다. 우리집 열쇠가 옆집의 열쇠랑 다르듯이 말이다. - 이와 같이 키라는 것은 무언가를 식별하는 고유한 식별자(

    jerryjerryjerry.tistory.com

     

    10.

     

    https://velog.io/@continue_deve/Chap5.-%EB%AC%B4%EA%B2%B0%EC%84%B1%EA%B3%BC-%EB%B3%B4%EC%95%88

     

    Chap5. 무결성과 보안

    무결성 제약 무결성 제약의 유형 기본적 무결성 제약 테이블 무결성 제약 기타 무결성 제약 데이터베이스 보안 데이터베이스에서의 사용 권한 SQL에서의 권한 제어 롤 뷰를 이용한 권한 제어 오

    velog.io

     

    https://jerryjerryjerry.tistory.com/50

     

    [SQL] 무결성, 제약조건

    * 관계형 데이터베이스 - 관계형 데이터베이스란 임의의 데이터베이스 내에 존재하는 여러 테이블들이 서로 관계를 가지며 운영되는 것을 의미한다. - 관계형 데이터베이스는 테이블 간의 관계

    jerryjerryjerry.tistory.com

     

    InnoDB

     

    https://velog.io/@seyoung755/MySQL%EC%9D%98-%EC%8A%A4%ED%86%A0%EB%A6%AC%EC%A7%80-%EC%97%94%EC%A7%84%EC%97%90-%EB%8C%80%ED%95%B4-%EC%95%8C%EC%95%84%EB%B3%B4%EC%9E%90-1-feat.-InnoDB

     

    MySQL의 스토리지 엔진에 대해 알아보자 - 1 (feat. InnoDB)

    현재 백엔드 학습을 하며 주로 사용하는 MySQL DB에는 여러가지 스토리지 엔진이 존재합니다. 각 엔진별로 지원하는 기능이 다른데, 별다른 고민 없이 사용하고 있는 것 같아서 정리하고자 글을

    velog.io